[INFO] fetching crate wgsl_to_wgpu 0.15.2... [INFO] testing wgsl_to_wgpu-0.15.2 against try#2440211fe03bc45c89b6dc1a3df18382ce91e32b for pr-146098-1 [INFO] extracting crate wgsl_to_wgpu 0.15.2 into /workspace/builds/worker-0-tc2/source [INFO] started tweaking crates.io crate wgsl_to_wgpu 0.15.2 [INFO] finished tweaking crates.io crate wgsl_to_wgpu 0.15.2 [INFO] tweaked toml for crates.io crate wgsl_to_wgpu 0.15.2 written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate wgsl_to_wgpu 0.15.2 on toolchain 2440211fe03bc45c89b6dc1a3df18382ce91e32b [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate wgsl_to_wgpu 0.15.2 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" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 24b3490d17f1e4bc139c49fe76b2ed679e181587e03218e692f19fce8d1a8180 [INFO] running `Command { std: "docker" "start" "-a" "24b3490d17f1e4bc139c49fe76b2ed679e181587e03218e692f19fce8d1a8180", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "24b3490d17f1e4bc139c49fe76b2ed679e181587e03218e692f19fce8d1a8180", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "24b3490d17f1e4bc139c49fe76b2ed679e181587e03218e692f19fce8d1a8180", kill_on_drop: false }` [INFO] [stdout] 24b3490d17f1e4bc139c49fe76b2ed679e181587e03218e692f19fce8d1a8180 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 68c9d235338cf97301ca7466e7fefaa7792a9dd548350dc5b9acca792e67882e [INFO] running `Command { std: "docker" "start" "-a" "68c9d235338cf97301ca7466e7fefaa7792a9dd548350dc5b9acca792e67882e", kill_on_drop: false }` [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling serde_core v1.0.225 [INFO] [stderr] Compiling serde v1.0.225 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling unicode-width v0.2.1 [INFO] [stderr] Compiling hexf-parse v0.2.1 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling naga v26.0.0 [INFO] [stderr] Compiling prettyplease v0.2.37 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling pathdiff v0.2.3 [INFO] [stderr] Compiling case v1.0.0 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling codespan-reporting v0.12.0 [INFO] [stderr] Compiling indexmap v2.11.3 [INFO] [stderr] Compiling half v2.6.0 [INFO] [stderr] Compiling thiserror-impl v2.0.16 [INFO] [stderr] Compiling bytemuck_derive v1.10.1 [INFO] [stderr] Compiling bitflags v2.9.4 [INFO] [stderr] Compiling thiserror v2.0.16 [INFO] [stderr] Compiling bytemuck v1.23.2 [INFO] [stderr] Compiling wgpu-types v26.0.0 [INFO] [stderr] Compiling wgsl_to_wgpu v0.15.2 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.54s [INFO] running `Command { std: "docker" "inspect" "68c9d235338cf97301ca7466e7fefaa7792a9dd548350dc5b9acca792e67882e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "68c9d235338cf97301ca7466e7fefaa7792a9dd548350dc5b9acca792e67882e", kill_on_drop: false }` [INFO] [stdout] 68c9d235338cf97301ca7466e7fefaa7792a9dd548350dc5b9acca792e67882e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e17e4fbb5859699cb8d573f51bd504a057a13951ebd00e8c8fa727bf43680340 [INFO] running `Command { std: "docker" "start" "-a" "e17e4fbb5859699cb8d573f51bd504a057a13951ebd00e8c8fa727bf43680340", kill_on_drop: false }` [INFO] [stderr] Compiling diff v0.1.13 [INFO] [stderr] Compiling similar v2.7.0 [INFO] [stderr] Compiling yansi v1.0.1 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling naga v26.0.0 [INFO] [stderr] Compiling pretty_assertions v1.4.1 [INFO] [stderr] Compiling insta v1.43.2 [INFO] [stderr] Compiling wgsl_to_wgpu v0.15.2 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 7.79s [INFO] running `Command { std: "docker" "inspect" "e17e4fbb5859699cb8d573f51bd504a057a13951ebd00e8c8fa727bf43680340", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e17e4fbb5859699cb8d573f51bd504a057a13951ebd00e8c8fa727bf43680340", kill_on_drop: false }` [INFO] [stdout] e17e4fbb5859699cb8d573f51bd504a057a13951ebd00e8c8fa727bf43680340 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 41e86639704726fe70667790f805419e7999ece09063eeb0b29a2ef1fbe29135 [INFO] running `Command { std: "docker" "start" "-a" "41e86639704726fe70667790f805419e7999ece09063eeb0b29a2ef1fbe29135", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/wgsl_to_wgpu-a2c5bf3ca9e8f178) [INFO] [stdout] [INFO] [stdout] running 47 tests [INFO] [stdout] test bindgroup::tests::bind_group_data_first_group_not_zero ... ok [INFO] [stdout] test bindgroup::tests::bind_group_data_consecutive_bind_groups ... ok [INFO] [stdout] test bindgroup::tests::bind_group_data_non_consecutive_bind_groups ... ok [INFO] [stdout] test structs::tests::write_all_structs_glam ... ok [INFO] [stdout] test structs::tests::write_all_structs_rust ... ok [INFO] [stdout] test structs::tests::write_all_structs_nalgebra ... ok [INFO] [stdout] test structs::tests::write_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 bindgroup::tests::bind_groups_module_compute ... FAILED [INFO] [stdout] test bindgroup::tests::bind_groups_module_fragment ... FAILED [INFO] [stdout] test structs::tests::write_all_structs_bytemuck_input_layout_validation ... FAILED [INFO] [stdout] test test::create_shader_module_non_consecutive_bind_groups ... ok [INFO] [stdout] test test::create_shader_module_parse_error ... ok [INFO] [stdout] test structs::tests::write_all_structs_serde_encase_bytemuck ... FAILED [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_module_multiple_outputs ... ok [INFO] [stdout] test consts::tests::write_pipeline_overrideable_constants ... FAILED [INFO] [stdout] test test::create_shader_modules_source ... ok [INFO] [stdout] test bindgroup::tests::bind_groups_module_vertex ... FAILED [INFO] [stdout] test test::create_shader_module_push_constants ... ok [INFO] [stdout] test structs::tests::write_all_structs_encase_bytemuck ... FAILED [INFO] [stdout] test test::create_shader_module_consecutive_bind_groups ... ok [INFO] [stdout] test bindgroup::tests::bind_groups_module_vertex_fragment ... FAILED [INFO] [stdout] test test::create_shader_multiple_entries ... ok [INFO] [stdout] test test::add_single_root_module ... FAILED [INFO] [stdout] test test::add_duplicate_module_different_paths ... FAILED [INFO] [stdout] test structs::tests::write_all_structs_bytemuck_f64_vec ... FAILED [INFO] [stdout] test consts::tests::write_pipeline_overrideable_constants_empty ... ok [INFO] [stdout] test structs::tests::write_all_structs_bytemuck_skip_input_layout_validation ... FAILED [INFO] [stdout] test structs::tests::write_all_structs_skip_stage_outputs ... FAILED [INFO] [stdout] test test::single_root_module ... FAILED [INFO] [stdout] test test::write_vertex_module_single_input_float16 ... FAILED [INFO] [stdout] test test::create_shader_modules_source_rustfmt ... FAILED [INFO] [stdout] test test::shader_stage_collection ... FAILED [INFO] [stdout] test test::write_compute_module_multiple_entries ... FAILED [INFO] [stdout] test consts::tests::write_global_constants ... ok [INFO] [stdout] test test::vertex_entries ... FAILED [INFO] [stdout] test structs::tests::write_runtime_sized_array ... FAILED [INFO] [stdout] test test::write_vertex_module_single_input_float32 ... 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_empty ... ok [INFO] [stdout] test test::write_vertex_module_single_input_uint32 ... FAILED [INFO] [stdout] test test::write_compute_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:629 [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(&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(&self, pass: &mut P) { [INFO] [stdout] 111 │- pass.set_bind_group(1, &self.0, &[]); [INFO] [stdout] 112 │- } [INFO] [stdout] 113 │- } [INFO] [stdout] 114 │- #[derive(Debug, Copy, Clone)] [INFO] [stdout] 115 │- pub struct BindGroups<'a> { [INFO] [stdout] 116 │- pub bind_group0: &'a BindGroup0, [INFO] [stdout] 117 │- pub bind_group1: &'a BindGroup1, [INFO] [stdout] 118 │- } [INFO] [stdout] 119 │- impl BindGroups<'_> { [INFO] [stdout] 120 │- pub fn set(&self, pass: &mut P) { [INFO] [stdout] 121 │- self.bind_group0.set(pass); [INFO] [stdout] 122 │- self.bind_group1.set(pass); [INFO] [stdout] 123 │- } [INFO] [stdout] 124 │- } [INFO] [stdout] 125 │- pub trait SetBindGroup { [INFO] [stdout] 126 │- fn set_bind_group( [INFO] [stdout] 127 │- &mut self, [INFO] [stdout] 128 │- index: u32, [INFO] [stdout] 129 │- bind_group: &wgpu::BindGroup, [INFO] [stdout] 130 │- offsets: &[wgpu::DynamicOffset], [INFO] [stdout] 131 │- ); [INFO] [stdout] 132 │- } [INFO] [stdout] 133 │- impl SetBindGroup for wgpu::ComputePass<'_> { [INFO] [stdout] 134 │- fn set_bind_group( [INFO] [stdout] 135 │- &mut self, [INFO] [stdout] 136 │- index: u32, [INFO] [stdout] 137 │- bind_group: &wgpu::BindGroup, [INFO] [stdout] 138 │- offsets: &[wgpu::DynamicOffset], [INFO] [stdout] 139 │- ) { [INFO] [stdout] 140 │- self.set_bind_group(index, bind_group, offsets); [INFO] [stdout] 141 │- } [INFO] [stdout] 142 │- } [INFO] [stdout] 143 │- impl SetBindGroup for wgpu::RenderPass<'_> { [INFO] [stdout] 144 │- fn set_bind_group( [INFO] [stdout] 145 │- &mut self, [INFO] [stdout] 146 │- index: u32, [INFO] [stdout] 147 │- bind_group: &wgpu::BindGroup, [INFO] [stdout] 148 │- offsets: &[wgpu::DynamicOffset], [INFO] [stdout] 149 │- ) { [INFO] [stdout] 150 │- self.set_bind_group(index, bind_group, offsets); [INFO] [stdout] 151 │- } [INFO] [stdout] 152 │- } [INFO] [stdout] 153 │- impl SetBindGroup for wgpu::RenderBundleEncoder<'_> { [INFO] [stdout] 154 │- fn set_bind_group( [INFO] [stdout] 155 │- &mut self, [INFO] [stdout] 156 │- index: u32, [INFO] [stdout] 157 │- bind_group: &wgpu::BindGroup, [INFO] [stdout] 158 │- offsets: &[wgpu::DynamicOffset], [INFO] [stdout] 159 │- ) { [INFO] [stdout] 160 │- self.set_bind_group(index, bind_group, offsets); [INFO] [stdout] 161 │- } [INFO] [stdout] 162 │- } [INFO] [stdout] 163 │-} [INFO] [stdout] 164 │-pub fn set_bind_groups( [INFO] [stdout] 165 │- pass: &mut P, [INFO] [stdout] 166 │- bind_group0: &bind_groups::BindGroup0, [INFO] [stdout] 167 │- bind_group1: &bind_groups::BindGroup1, [INFO] [stdout] 168 │-) { [INFO] [stdout] 169 │- bind_group0.set(pass); [INFO] [stdout] 170 │- bind_group1.set(pass); [INFO] [stdout] 171 │-} [INFO] [stdout] 1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub src : wgpu :: BufferBinding < 'a > , pub vertex_weights : wgpu :: BufferBinding < 'a > , pub dst : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : true } , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 1 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : true } , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 2 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : false } , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . src) , } , wgpu :: BindGroupEntry { binding : 1 , resource : wgpu :: BindingResource :: Buffer (bindings . vertex_weights) , } , wgpu :: BindGroupEntry { binding : 2 , resource : wgpu :: BindingResource :: Buffer (bindings . dst) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug)] pub struct BindGroup1 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout1 < 'a > { pub transforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR1 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor1") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup1 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR1) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout1) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR1) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . transforms) , }] , label : Some ("BindGroup1") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (1 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 , pub bind_group1 : & 'a BindGroup1 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; self . bind_group1 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0 , bind_group1 : & bind_groups :: BindGroup1) { bind_group0 . set (pass) ; bind_group1 . set (pass) ; } [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'bindgroup::tests::bind_groups_module_compute' (28) panicked at src/bindgroup.rs:629: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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e72e23d - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e72e23d - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_compute::{{closure}}::ha163b9c8beaf05ca [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:802:17 [INFO] [stdout] 22: 0x5c551e6f9bf4 - insta::settings::Settings::bind::hec503ff4416d34a1 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e72dd1b - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_compute::h885df02174ee6007 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:801:22 [INFO] [stdout] 24: 0x5c551e72ddf7 - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_compute::{{closure}}::h0b42572d7efb4d89 [INFO] [stdout] at /opt/rustwide/workdir/src/bindgroup.rs:628:36 [INFO] [stdout] 25: 0x5c551e730906 - core::ops::function::FnOnce::call_once::h42bf9426fdb4962b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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:650 [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(&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(&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( [INFO] [stdout] 90 │- pass: &mut P, [INFO] [stdout] 91 │- bind_group0: &bind_groups::BindGroup0, [INFO] [stdout] 92 │-) { [INFO] [stdout] 93 │- bind_group0.set(pass); [INFO] [stdout] 94 │-} [INFO] [stdout] 1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub transforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . transforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'bindgroup::tests::bind_groups_module_fragment' (29) panicked at src/bindgroup.rs:650: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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e72eccd - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e72eccd - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_fragment::{{closure}}::hc937efd7a3afef74 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:802:17 [INFO] [stdout] 22: 0x5c551e6f9474 - insta::settings::Settings::bind::h863279efee51fe45 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e72e7ab - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_fragment::hbbd63177453877af [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:801:22 [INFO] [stdout] 24: 0x5c551e72e887 - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_fragment::{{closure}}::h529919cec6414248 [INFO] [stdout] at /opt/rustwide/workdir/src/bindgroup.rs:647:37 [INFO] [stdout] 25: 0x5c551e7306c6 - core::ops::function::FnOnce::call_once::h12245bf56d6eda9f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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 { [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, [INFO] [stdout] 11 │-) -> wgpu::VertexState<'a> { [INFO] [stdout] 12 │- wgpu::VertexState { [INFO] [stdout] 13 │- module, [INFO] [stdout] 14 │- entry_point: Some(entry.entry_point), [INFO] [stdout] 15 │- buffers: &entry.buffers, [INFO] [stdout] 16 │- compilation_options: wgpu::PipelineCompilationOptions { [INFO] [stdout] 17 │- constants: &entry.constants, [INFO] [stdout] 18 │- ..Default::default() [INFO] [stdout] 19 │- }, [INFO] [stdout] 20 │- } [INFO] [stdout] 21 │-} [INFO] [stdout] 22 │-pub fn main_entry(input0: wgpu::VertexStepMode) -> VertexEntry<1> { [INFO] [stdout] 23 │- VertexEntry { [INFO] [stdout] 24 │- entry_point: ENTRY_MAIN, [INFO] [stdout] 25 │- buffers: [Input0::vertex_buffer_layout(input0)], [INFO] [stdout] 26 │- constants: Default::default(), [INFO] [stdout] 27 │- } [INFO] [stdout] 28 │-} [INFO] [stdout] 29 │-pub const SOURCE: &str = include_str!("bytemuck_input_layout_validation.wgsl"); [INFO] [stdout] 30 │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule { [INFO] [stdout] 31 │- let source = std::borrow::Cow::Borrowed(SOURCE); [INFO] [stdout] 32 │- device.create_shader_module(wgpu::ShaderModuleDescriptor { [INFO] [stdout] 33 │- label: None, [INFO] [stdout] 34 │- source: wgpu::ShaderSource::Wgsl(source), [INFO] [stdout] 35 │- }) [INFO] [stdout] 36 │-} [INFO] [stdout] 37 │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout { [INFO] [stdout] 38 │- device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { [INFO] [stdout] 39 │- label: None, [INFO] [stdout] 40 │- bind_group_layouts: &[], [INFO] [stdout] 41 │- push_constant_ranges: &[], [INFO] [stdout] 42 │- }) [INFO] [stdout] 43 │-} [INFO] [stdout] 44 │-#[repr(C)] [INFO] [stdout] 45 │-#[derive(Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable)] [INFO] [stdout] 46 │-pub struct Inner { [INFO] [stdout] 47 │- pub a: f32, [INFO] [stdout] 48 │-} [INFO] [stdout] 49 │-const _: () = assert!( [INFO] [stdout] 50 │- std::mem::size_of::() == 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::() == 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::() 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::() == 4, [INFO] [stdout] 115 │- "size of Outer does not match WGSL" [INFO] [stdout] 116 │-); [INFO] [stdout] 117 │-const _: () = assert!( [INFO] [stdout] 118 │- std::mem::offset_of!(Outer, inner) == 0, [INFO] [stdout] 119 │- "offset of Outer.inner does not match WGSL" [INFO] [stdout] 120 │-); [INFO] [stdout] 1 │+pub const ENTRY_MAIN : & str = "main" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn main_entry (input0 : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_MAIN , buffers : [Input0 :: vertex_buffer_layout (input0)] , constants : Default :: default () } } pub const SOURCE : & str = include_str ! ("bytemuck_input_layout_validation.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , push_constant_ranges : & [] , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Inner { pub a : f32 } const _ : () = assert ! (std :: mem :: size_of :: < Inner > () == 4 , "size of Inner does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Inner , a) == 0 , "offset of Inner.a does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 } const _ : () = assert ! (std :: mem :: size_of :: < Input0 > () == 64 , "size of Input0 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , a) == 0 , "offset of Input0.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , b) == 8 , "offset of Input0.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , c) == 32 , "offset of Input0.c does not match WGSL") ; impl Input0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 3] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32 , offset : std :: mem :: offset_of ! (Input0 , a) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Sint32 , offset : std :: mem :: offset_of ! (Input0 , b) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32 , offset : std :: mem :: offset_of ! (Input0 , c) as u64 , shader_location : 2 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < Input0 > () as u64 , step_mode , attributes : & Input0 :: VERTEX_ATTRIBUTES } } } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Outer { pub inner : Inner } const _ : () = assert ! (std :: mem :: size_of :: < Outer > () == 4 , "size of Outer does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Outer , inner) == 0 , "offset of Outer.inner does not match WGSL") ; [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'structs::tests::write_all_structs_bytemuck_input_layout_validation' (36) 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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e6e8919 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e6e8919 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_input_layout_validation::{{closure}}::h1ce9ac6c8edd5228 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:815:17 [INFO] [stdout] 22: 0x5c551e6f9d3f - insta::settings::Settings::bind::hf8730d3be7e6a57b [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e6e84ba - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_input_layout_validation::hf87479d23385cc25 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:814:22 [INFO] [stdout] 24: 0x5c551e6e8a07 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_input_layout_validation::{{closure}}::h4e4b0a74c126b1cb [INFO] [stdout] at /opt/rustwide/workdir/src/structs.rs:522:60 [INFO] [stdout] 25: 0x5c551e7310a6 - core::ops::function::FnOnce::call_once::hc72b4aa07ddff13e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- structs::tests::write_all_structs_serde_encase_bytemuck stdout ---- [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] Snapshot file: src/snapshots/write_all_structs_serde_encase_bytemuck.snap [INFO] [stdout] Snapshot: write_all_structs_serde_encase_bytemuck [INFO] [stdout] Source: src/structs.rs:371 [INFO] [stdout] ──────────────────────────────────────────────────────────────────────────────── [INFO] [stdout] -old snapshot [INFO] [stdout] +new results [INFO] [stdout] ────────────┬─────────────────────────────────────────────────────────────────── [INFO] [stdout] 1 │-pub mod compute { [INFO] [stdout] 2 │- pub const MAIN_WORKGROUP_SIZE: [u32; 3] = [64, 1, 1]; [INFO] [stdout] 3 │- pub fn create_main_pipeline(device: &wgpu::Device) -> wgpu::ComputePipeline { [INFO] [stdout] 4 │- let module = super::create_shader_module(device); [INFO] [stdout] 5 │- let layout = super::create_pipeline_layout(device); [INFO] [stdout] 6 │- device.create_compute_pipeline(&wgpu::ComputePipelineDescriptor { [INFO] [stdout] 7 │- label: Some("Compute Pipeline main"), [INFO] [stdout] 8 │- layout: Some(&layout), [INFO] [stdout] 9 │- module: &module, [INFO] [stdout] 10 │- entry_point: Some("main"), [INFO] [stdout] 11 │- compilation_options: Default::default(), [INFO] [stdout] 12 │- cache: Default::default(), [INFO] [stdout] 13 │- }) [INFO] [stdout] 14 │- } [INFO] [stdout] 15 │-} [INFO] [stdout] 16 │-pub const ENTRY_MAIN: &str = "main"; [INFO] [stdout] 17 │-pub const SOURCE: &str = include_str!("serde_encase_bytemuck.wgsl"); [INFO] [stdout] 18 │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule { [INFO] [stdout] 19 │- let source = std::borrow::Cow::Borrowed(SOURCE); [INFO] [stdout] 20 │- device.create_shader_module(wgpu::ShaderModuleDescriptor { [INFO] [stdout] 21 │- label: None, [INFO] [stdout] 22 │- source: wgpu::ShaderSource::Wgsl(source), [INFO] [stdout] 23 │- }) [INFO] [stdout] 24 │-} [INFO] [stdout] 25 │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout { [INFO] [stdout] 26 │- device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { [INFO] [stdout] 27 │- label: None, [INFO] [stdout] 28 │- bind_group_layouts: &[], [INFO] [stdout] 29 │- push_constant_ranges: &[], [INFO] [stdout] 30 │- }) [INFO] [stdout] 31 │-} [INFO] [stdout] 32 │-#[repr(C)] [INFO] [stdout] 33 │-#[derive( [INFO] [stdout] 34 │- Debug, [INFO] [stdout] 35 │- Copy, [INFO] [stdout] 36 │- Clone, [INFO] [stdout] 37 │- PartialEq, [INFO] [stdout] 38 │- bytemuck :: Pod, [INFO] [stdout] 39 │- bytemuck :: Zeroable, [INFO] [stdout] 40 │- encase :: ShaderType, [INFO] [stdout] 41 │- serde :: Serialize, [INFO] [stdout] 42 │- serde :: Deserialize, [INFO] [stdout] 43 │-)] [INFO] [stdout] 44 │-pub struct Input0 { [INFO] [stdout] 45 │- pub a: u32, [INFO] [stdout] 46 │- pub b: i32, [INFO] [stdout] 47 │- pub c: f32, [INFO] [stdout] 48 │-} [INFO] [stdout] 49 │-const _: () = assert!( [INFO] [stdout] 50 │- std::mem::size_of::() == 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::() == 16, [INFO] [stdout] 83 │- "size of Nested does not match WGSL" [INFO] [stdout] 84 │-); [INFO] [stdout] 85 │-const _: () = assert!( [INFO] [stdout] 86 │- std::mem::offset_of!(Nested, a) == 0, [INFO] [stdout] 87 │- "offset of Nested.a does not match WGSL" [INFO] [stdout] 88 │-); [INFO] [stdout] 89 │-const _: () = assert!( [INFO] [stdout] 90 │- std::mem::offset_of!(Nested, b) == 12, [INFO] [stdout] 91 │- "offset of Nested.b does not match WGSL" [INFO] [stdout] 92 │-); [INFO] [stdout] 1 │+pub mod compute { pub const MAIN_WORKGROUP_SIZE : [u32 ; 3] = [64 , 1 , 1] ; pub fn create_main_pipeline (device : & wgpu :: Device) -> wgpu :: ComputePipeline { let module = super :: create_shader_module (device) ; let layout = super :: create_pipeline_layout (device) ; device . create_compute_pipeline (& wgpu :: ComputePipelineDescriptor { label : Some ("Compute Pipeline main") , layout : Some (& layout) , module : & module , entry_point : Some ("main") , compilation_options : Default :: default () , cache : Default :: default () , }) } } pub const ENTRY_MAIN : & str = "main" ; pub const SOURCE : & str = include_str ! ("serde_encase_bytemuck.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , push_constant_ranges : & [] , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType , serde :: Serialize , serde :: Deserialize)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 } const _ : () = assert ! (std :: mem :: size_of :: < Input0 > () == 12 , "size of Input0 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , a) == 0 , "offset of Input0.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , b) == 4 , "offset of Input0.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Input0 , c) == 8 , "offset of Input0.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType , serde :: Serialize , serde :: Deserialize)] pub struct Nested { pub a : Input0 , pub b : f32 } const _ : () = assert ! (std :: mem :: size_of :: < Nested > () == 16 , "size of Nested does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Nested , a) == 0 , "offset of Nested.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Nested , b) == 12 , "offset of Nested.b does not match WGSL") ; [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'structs::tests::write_all_structs_serde_encase_bytemuck' (45) 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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e6e79f9 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e6e79f9 - wgsl_to_wgpu::structs::tests::write_all_structs_serde_encase_bytemuck::{{closure}}::h5572094f473c7cf2 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:815:17 [INFO] [stdout] 22: 0x5c551e6f9c9f - insta::settings::Settings::bind::hf247152d4878806b [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e6e756a - wgsl_to_wgpu::structs::tests::write_all_structs_serde_encase_bytemuck::h1a4ec20f4048e3c6 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:814:22 [INFO] [stdout] 24: 0x5c551e6e7607 - wgsl_to_wgpu::structs::tests::write_all_structs_serde_encase_bytemuck::{{closure}}::h524aa2e4cf173b7d [INFO] [stdout] at /opt/rustwide/workdir/src/structs.rs:356:49 [INFO] [stdout] 25: 0x5c551e730d16 - core::ops::function::FnOnce::call_once::h910d0a721b51ac51 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- consts::tests::write_pipeline_overrideable_constants stdout ---- [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] Snapshot file: src/snapshots/write_pipeline_overrideable_constants.snap [INFO] [stdout] Snapshot: write_pipeline_overrideable_constants [INFO] [stdout] Source: src/consts.rs:237 [INFO] [stdout] ──────────────────────────────────────────────────────────────────────────────── [INFO] [stdout] -old snapshot [INFO] [stdout] +new results [INFO] [stdout] ────────────┬─────────────────────────────────────────────────────────────────── [INFO] [stdout] 1 │-pub struct OverrideConstants { [INFO] [stdout] 2 │- pub b1: Option, [INFO] [stdout] 3 │- pub b2: Option, [INFO] [stdout] 4 │- pub b3: bool, [INFO] [stdout] 5 │- pub f1: Option, [INFO] [stdout] 6 │- pub f2: f32, [INFO] [stdout] 7 │- pub i1: Option, [INFO] [stdout] 8 │- pub i2: i32, [INFO] [stdout] 9 │- pub i3: Option, [INFO] [stdout] 10 │- pub a: Option, [INFO] [stdout] 11 │- pub b: Option, [INFO] [stdout] 12 │-} [INFO] [stdout] 13 │-impl OverrideConstants { [INFO] [stdout] 14 │- pub fn constants(&self) -> Vec<(&'static str, f64)> { [INFO] [stdout] 15 │- let mut entries = vec![ [INFO] [stdout] 16 │- ("b3", if self.b3 { 1.0 } else { 0.0 }), [INFO] [stdout] 17 │- ("f2", self.f2 as f64), [INFO] [stdout] 18 │- ("i2", self.i2 as f64), [INFO] [stdout] 19 │- ]; [INFO] [stdout] 20 │- if let Some(value) = self.b1 { [INFO] [stdout] 21 │- entries.push(("b1", if value { 1.0 } else { 0.0 })); [INFO] [stdout] 22 │- }; [INFO] [stdout] 23 │- if let Some(value) = self.b2 { [INFO] [stdout] 24 │- entries.push(("b2", if value { 1.0 } else { 0.0 })); [INFO] [stdout] 25 │- }; [INFO] [stdout] 26 │- if let Some(value) = self.f1 { [INFO] [stdout] 27 │- entries.push(("f1", value as f64)); [INFO] [stdout] 28 │- }; [INFO] [stdout] 29 │- if let Some(value) = self.i1 { [INFO] [stdout] 30 │- entries.push(("i1", value as f64)); [INFO] [stdout] 31 │- }; [INFO] [stdout] 32 │- if let Some(value) = self.i3 { [INFO] [stdout] 33 │- entries.push(("i3", value as f64)); [INFO] [stdout] 34 │- }; [INFO] [stdout] 35 │- if let Some(value) = self.a { [INFO] [stdout] 36 │- entries.push(("0", value as f64)); [INFO] [stdout] 37 │- }; [INFO] [stdout] 38 │- if let Some(value) = self.b { [INFO] [stdout] 39 │- entries.push(("35", value as f64)); [INFO] [stdout] 40 │- } [INFO] [stdout] 41 │- entries [INFO] [stdout] 42 │- } [INFO] [stdout] 43 │-} [INFO] [stdout] 1 │+pub struct OverrideConstants { pub b1 : Option < bool > , pub b2 : Option < bool > , pub b3 : bool , pub f1 : Option < f32 > , pub f2 : f32 , pub i1 : Option < i32 > , pub i2 : i32 , pub i3 : Option < i32 > , pub a : Option < f32 > , pub b : Option < f32 > } impl OverrideConstants { pub fn constants (& self) -> Vec < (& 'static str , f64) > { let mut entries = vec ! [("b3" , if self . b3 { 1.0 } else { 0.0 }) , ("f2" , self . f2 as f64) , ("i2" , self . i2 as f64)] ; if let Some (value) = self . b1 { entries . push (("b1" , if value { 1.0 } else { 0.0 })) ; } ; if let Some (value) = self . b2 { entries . push (("b2" , if value { 1.0 } else { 0.0 })) ; } ; if let Some (value) = self . f1 { entries . push (("f1" , value as f64)) ; } ; if let Some (value) = self . i1 { entries . push (("i1" , value as f64)) ; } ; if let Some (value) = self . i3 { entries . push (("i3" , value as f64)) ; } ; if let Some (value) = self . a { entries . push (("0" , value as f64)) ; } ; if let Some (value) = self . b { entries . push (("35" , value as f64)) ; } entries } } [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'consts::tests::write_pipeline_overrideable_constants' (33) panicked at src/consts.rs:237: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_pipeline_overrideable_constants.snap.new") [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e72c8fd - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e72c8fd - wgsl_to_wgpu::consts::tests::write_pipeline_overrideable_constants::{{closure}}::h47be7994c8ee0e30 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:802:17 [INFO] [stdout] 22: 0x5c551e6f9274 - insta::settings::Settings::bind::h62e87377d994077c [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e72c424 - wgsl_to_wgpu::consts::tests::write_pipeline_overrideable_constants::hf3a2f493b8f8c363 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:801:22 [INFO] [stdout] 24: 0x5c551e72c9f7 - wgsl_to_wgpu::consts::tests::write_pipeline_overrideable_constants::{{closure}}::h87bdb985a16fdbdf [INFO] [stdout] at /opt/rustwide/workdir/src/consts.rs:210:47 [INFO] [stdout] 25: 0x5c551e730706 - core::ops::function::FnOnce::call_once::h15b0ed6ca1797333 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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:643 [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(&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(&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( [INFO] [stdout] 90 │- pass: &mut P, [INFO] [stdout] 91 │- bind_group0: &bind_groups::BindGroup0, [INFO] [stdout] 92 │-) { [INFO] [stdout] 93 │- bind_group0.set(pass); [INFO] [stdout] 94 │-} [INFO] [stdout] 1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub transforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: VERTEX , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . transforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'bindgroup::tests::bind_groups_module_vertex' (30) panicked at src/bindgroup.rs:643: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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e72d7ad - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e72d7ad - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex::{{closure}}::h6d7bbdc8d99e9abc [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:802:17 [INFO] [stdout] 22: 0x5c551e6f99f4 - insta::settings::Settings::bind::hd98f93c0c02bd698 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e72d28b - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex::h04acd9b0ab04319f [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:801:22 [INFO] [stdout] 24: 0x5c551e72d367 - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex::{{closure}}::h6561db300e85506c [INFO] [stdout] at /opt/rustwide/workdir/src/bindgroup.rs:640:35 [INFO] [stdout] 25: 0x5c551e731006 - core::ops::function::FnOnce::call_once::hb4c14587eddadf7c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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 { [INFO] [stdout] 4 │- pub entry_point: &'static str, [INFO] [stdout] 5 │- pub targets: [Option; 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, [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; 0]) -> FragmentEntry<0> { [INFO] [stdout] 23 │- FragmentEntry { [INFO] [stdout] 24 │- entry_point: ENTRY_MAIN, [INFO] [stdout] 25 │- targets, [INFO] [stdout] 26 │- constants: Default::default(), [INFO] [stdout] 27 │- } [INFO] [stdout] 28 │-} [INFO] [stdout] 29 │-pub const SOURCE: &str = include_str!("types.wgsl"); [INFO] [stdout] 30 │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule { [INFO] [stdout] 31 │- let source = std::borrow::Cow::Borrowed(SOURCE); [INFO] [stdout] 32 │- device.create_shader_module(wgpu::ShaderModuleDescriptor { [INFO] [stdout] 33 │- label: None, [INFO] [stdout] 34 │- source: wgpu::ShaderSource::Wgsl(source), [INFO] [stdout] 35 │- }) [INFO] [stdout] 36 │-} [INFO] [stdout] 37 │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout { [INFO] [stdout] 38 │- device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { [INFO] [stdout] 39 │- label: None, [INFO] [stdout] 40 │- bind_group_layouts: &[], [INFO] [stdout] 41 │- push_constant_ranges: &[], [INFO] [stdout] 42 │- }) [INFO] [stdout] 43 │-} [INFO] [stdout] 44 │-#[repr(C)] [INFO] [stdout] 45 │-#[derive( [INFO] [stdout] 46 │- Debug, Copy, Clone, PartialEq, bytemuck :: Pod, bytemuck :: Zeroable, encase :: ShaderType, [INFO] [stdout] 47 │-)] [INFO] [stdout] 48 │-pub struct Atomics { [INFO] [stdout] 49 │- pub num: u32, [INFO] [stdout] 50 │- pub numi: i32, [INFO] [stdout] 51 │-} [INFO] [stdout] 52 │-const _: () = assert!( [INFO] [stdout] 53 │- std::mem::size_of::() == 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::() == 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::() == 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::() == 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::() == 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::() == 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::() == 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::() == 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::() == 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::() == 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::() == 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::() == 48, [INFO] [stdout] 410 │- "size of VectorsU32 does not match WGSL" [INFO] [stdout] 411 │-); [INFO] [stdout] 412 │-const _: () = assert!( [INFO] [stdout] 413 │- std::mem::offset_of!(VectorsU32, a) == 0, [INFO] [stdout] 414 │- "offset of VectorsU32.a does not match WGSL" [INFO] [stdout] 415 │-); [INFO] [stdout] 416 │-const _: () = assert!( [INFO] [stdout] 417 │- std::mem::offset_of!(VectorsU32, b) == 16, [INFO] [stdout] 418 │- "offset of VectorsU32.b does not match WGSL" [INFO] [stdout] 419 │-); [INFO] [stdout] 420 │-const _: () = assert!( [INFO] [stdout] 421 │- std::mem::offset_of!(VectorsU32, c) == 32, [INFO] [stdout] 422 │- "offset of VectorsU32.c does not match WGSL" [INFO] [stdout] 423 │-); [INFO] [stdout] 1 │+pub const ENTRY_MAIN : & str = "main" ; # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn main_entry (targets : [Option < wgpu :: ColorTargetState > ; 0] ,) -> FragmentEntry < 0 > { FragmentEntry { entry_point : ENTRY_MAIN , targets , constants : Default :: default () } } pub const SOURCE : & str = include_str ! ("types.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , push_constant_ranges : & [] , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct Atomics { pub num : u32 , pub numi : i32 } const _ : () = assert ! (std :: mem :: size_of :: < Atomics > () == 8 , "size of Atomics does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Atomics , num) == 0 , "offset of Atomics.num does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Atomics , numi) == 4 , "offset of Atomics.numi does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct MatricesF16 { pub a : [[half :: f16 ; 4] ; 4] , pub b : [[half :: f16 ; 4] ; 3] , pub c : [[half :: f16 ; 4] ; 2] , pub d : [[half :: f16 ; 3] ; 4] , pub e : [[half :: f16 ; 3] ; 3] , pub f : [[half :: f16 ; 3] ; 2] , pub g : [[half :: f16 ; 2] ; 4] , pub h : [[half :: f16 ; 2] ; 3] , pub i : [[half :: f16 ; 2] ; 2] } const _ : () = assert ! (std :: mem :: size_of :: < MatricesF16 > () == 184 , "size of MatricesF16 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , a) == 0 , "offset of MatricesF16.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , b) == 32 , "offset of MatricesF16.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , c) == 64 , "offset of MatricesF16.c does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , d) == 80 , "offset of MatricesF16.d does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , e) == 104 , "offset of MatricesF16.e does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , f) == 128 , "offset of MatricesF16.f does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , g) == 144 , "offset of MatricesF16.g does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , h) == 160 , "offset of MatricesF16.h does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF16 , i) == 176 , "offset of MatricesF16.i does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct MatricesF32 { pub a : [[f32 ; 4] ; 4] , pub b : [[f32 ; 4] ; 3] , pub c : [[f32 ; 4] ; 2] , pub d : [[f32 ; 3] ; 4] , pub e : [[f32 ; 3] ; 3] , pub f : [[f32 ; 3] ; 2] , pub g : [[f32 ; 2] ; 4] , pub h : [[f32 ; 2] ; 3] , pub i : [[f32 ; 2] ; 2] } const _ : () = assert ! (std :: mem :: size_of :: < MatricesF32 > () == 368 , "size of MatricesF32 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , a) == 0 , "offset of MatricesF32.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , b) == 64 , "offset of MatricesF32.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , c) == 128 , "offset of MatricesF32.c does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , d) == 160 , "offset of MatricesF32.d does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , e) == 208 , "offset of MatricesF32.e does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , f) == 256 , "offset of MatricesF32.f does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , g) == 288 , "offset of MatricesF32.g does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , h) == 320 , "offset of MatricesF32.h does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF32 , i) == 352 , "offset of MatricesF32.i does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct MatricesF64 { pub a : [[f64 ; 4] ; 4] , pub b : [[f64 ; 4] ; 3] , pub c : [[f64 ; 4] ; 2] , pub d : [[f64 ; 3] ; 4] , pub e : [[f64 ; 3] ; 3] , pub f : [[f64 ; 3] ; 2] , pub g : [[f64 ; 2] ; 4] , pub h : [[f64 ; 2] ; 3] , pub i : [[f64 ; 2] ; 2] } const _ : () = assert ! (std :: mem :: size_of :: < MatricesF64 > () == 736 , "size of MatricesF64 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , a) == 0 , "offset of MatricesF64.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , b) == 128 , "offset of MatricesF64.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , c) == 256 , "offset of MatricesF64.c does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , d) == 320 , "offset of MatricesF64.d does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , e) == 416 , "offset of MatricesF64.e does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , f) == 512 , "offset of MatricesF64.f does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , g) == 576 , "offset of MatricesF64.g does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , h) == 640 , "offset of MatricesF64.h does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (MatricesF64 , i) == 704 , "offset of MatricesF64.i does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct Nested { pub a : MatricesF32 , pub b : MatricesF64 } const _ : () = assert ! (std :: mem :: size_of :: < Nested > () == 1120 , "size of Nested does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Nested , a) == 0 , "offset of Nested.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Nested , b) == 384 , "offset of Nested.b does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct Scalars { pub a : u32 , pub b : i32 , pub c : f32 , pub d : half :: f16 } const _ : () = assert ! (std :: mem :: size_of :: < Scalars > () == 16 , "size of Scalars does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Scalars , a) == 0 , "offset of Scalars.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Scalars , b) == 4 , "offset of Scalars.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Scalars , c) == 8 , "offset of Scalars.c does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (Scalars , d) == 12 , "offset of Scalars.d does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct StaticArrays { pub a : [u32 ; 5] , pub b : [f32 ; 3] , pub c : [[[f32 ; 4] ; 4] ; 512] } const _ : () = assert ! (std :: mem :: size_of :: < StaticArrays > () == 32800 , "size of StaticArrays does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (StaticArrays , a) == 0 , "offset of StaticArrays.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (StaticArrays , b) == 20 , "offset of StaticArrays.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (StaticArrays , c) == 32 , "offset of StaticArrays.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsF16 { pub a : [half :: f16 ; 2] , pub b : [half :: f16 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsF16 > () == 16 , "size of VectorsF16 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF16 , a) == 0 , "offset of VectorsF16.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF16 , b) == 8 , "offset of VectorsF16.b does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsF32 { pub a : [f32 ; 2] , pub b : [f32 ; 3] , pub c : [f32 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsF32 > () == 48 , "size of VectorsF32 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF32 , a) == 0 , "offset of VectorsF32.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF32 , b) == 16 , "offset of VectorsF32.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF32 , c) == 32 , "offset of VectorsF32.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsF64 { pub a : [f64 ; 2] , pub b : [f64 ; 3] , pub c : [f64 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsF64 > () == 96 , "size of VectorsF64 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF64 , a) == 0 , "offset of VectorsF64.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF64 , b) == 32 , "offset of VectorsF64.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsF64 , c) == 64 , "offset of VectorsF64.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsI32 { pub a : [i32 ; 2] , pub b : [i32 ; 3] , pub c : [i32 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsI32 > () == 48 , "size of VectorsI32 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsI32 , a) == 0 , "offset of VectorsI32.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsI32 , b) == 16 , "offset of VectorsI32.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsI32 , c) == 32 , "offset of VectorsI32.c does not match WGSL") ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable , encase :: ShaderType)] pub struct VectorsU32 { pub a : [u32 ; 2] , pub b : [u32 ; 3] , pub c : [u32 ; 4] } const _ : () = assert ! (std :: mem :: size_of :: < VectorsU32 > () == 48 , "size of VectorsU32 does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsU32 , a) == 0 , "offset of VectorsU32.a does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsU32 , b) == 16 , "offset of VectorsU32.b does not match WGSL") ; const _ : () = assert ! (std :: mem :: offset_of ! (VectorsU32 , c) == 32 , "offset of VectorsU32.c does not match WGSL") ; [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'structs::tests::write_all_structs_encase_bytemuck' (38) 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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e6e59a9 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e6e59a9 - wgsl_to_wgpu::structs::tests::write_all_structs_encase_bytemuck::{{closure}}::h2c70786d201da274 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:815:17 [INFO] [stdout] 22: 0x5c551e6f911f - insta::settings::Settings::bind::h592b219e7fda13a0 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e6e554a - wgsl_to_wgpu::structs::tests::write_all_structs_encase_bytemuck::hc0e36c266a6ab872 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:814:22 [INFO] [stdout] 24: 0x5c551e6e5a97 - wgsl_to_wgpu::structs::tests::write_all_structs_encase_bytemuck::{{closure}}::h5624e71d78459ef7 [INFO] [stdout] at /opt/rustwide/workdir/src/structs.rs:337:43 [INFO] [stdout] 25: 0x5c551e730ec6 - core::ops::function::FnOnce::call_once::ha111ff2a628ae140 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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:636 [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(&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(&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(&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(&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( [INFO] [stdout] 491 │- pass: &mut P, [INFO] [stdout] 492 │- bind_group0: &bind_groups::BindGroup0, [INFO] [stdout] 493 │- bind_group1: &bind_groups::BindGroup1, [INFO] [stdout] 494 │- bind_group2: &bind_groups::BindGroup2, [INFO] [stdout] 495 │-) { [INFO] [stdout] 496 │- bind_group0.set(pass); [INFO] [stdout] 497 │- bind_group1.set(pass); [INFO] [stdout] 498 │- bind_group2.set(pass); [INFO] [stdout] 499 │-} [INFO] [stdout] 1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub color_texture1 : & 'a wgpu :: TextureView , pub color_texture2 : & 'a wgpu :: TextureView , pub color_texture3 : & 'a wgpu :: TextureView , pub depth_texture : & 'a wgpu :: TextureView , pub color_sampler : & 'a wgpu :: Sampler , pub comparison_sampler : & 'a wgpu :: Sampler , pub storage_tex_read : & 'a wgpu :: TextureView , pub storage_tex_write : & 'a wgpu :: TextureView , pub storage_tex_read_write : & 'a wgpu :: TextureView , pub color_texture_msaa : & 'a wgpu :: TextureView , pub depth_texture_msaa : & 'a wgpu :: TextureView , pub color_texture_array_2d : & 'a wgpu :: TextureView , pub color_texture_array_cube : & 'a wgpu :: TextureView , pub texture_binding_array : & 'a [& 'a wgpu :: TextureView ; 2] , pub sampler_binding_array : & 'a [& 'a wgpu :: Sampler ; 3] } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Uint , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 1 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Sint , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 2 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 3 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Depth , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 4 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Sampler (wgpu :: SamplerBindingType :: Filtering) , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 5 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Sampler (wgpu :: SamplerBindingType :: Comparison) , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 6 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: StorageTexture { access : wgpu :: StorageTextureAccess :: ReadOnly , format : wgpu :: TextureFormat :: R32Float , view_dimension : wgpu :: TextureViewDimension :: D2 , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 7 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: StorageTexture { access : wgpu :: StorageTextureAccess :: WriteOnly , format : wgpu :: TextureFormat :: Rg32Sint , view_dimension : wgpu :: TextureViewDimension :: D2 , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 8 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: StorageTexture { access : wgpu :: StorageTextureAccess :: ReadWrite , format : wgpu :: TextureFormat :: Rgba8Uint , view_dimension : wgpu :: TextureViewDimension :: D2 , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 9 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : true , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 10 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Depth , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : true , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 11 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: D2Array , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 12 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: CubeArray , multisampled : false , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 13 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Texture { sample_type : wgpu :: TextureSampleType :: Float { filterable : true } , view_dimension : wgpu :: TextureViewDimension :: D2 , multisampled : false , } , count : Some (std :: num :: NonZeroU32 :: new (2) . unwrap ()) , } , wgpu :: BindGroupLayoutEntry { binding : 14 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Sampler (wgpu :: SamplerBindingType :: Filtering) , count : Some (std :: num :: NonZeroU32 :: new (3) . unwrap ()) , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture1) , } , wgpu :: BindGroupEntry { binding : 1 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture2) , } , wgpu :: BindGroupEntry { binding : 2 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture3) , } , wgpu :: BindGroupEntry { binding : 3 , resource : wgpu :: BindingResource :: TextureView (bindings . depth_texture) , } , wgpu :: BindGroupEntry { binding : 4 , resource : wgpu :: BindingResource :: Sampler (bindings . color_sampler) , } , wgpu :: BindGroupEntry { binding : 5 , resource : wgpu :: BindingResource :: Sampler (bindings . comparison_sampler) , } , wgpu :: BindGroupEntry { binding : 6 , resource : wgpu :: BindingResource :: TextureView (bindings . storage_tex_read) , } , wgpu :: BindGroupEntry { binding : 7 , resource : wgpu :: BindingResource :: TextureView (bindings . storage_tex_write) , } , wgpu :: BindGroupEntry { binding : 8 , resource : wgpu :: BindingResource :: TextureView (bindings . storage_tex_read_write) , } , wgpu :: BindGroupEntry { binding : 9 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture_msaa) , } , wgpu :: BindGroupEntry { binding : 10 , resource : wgpu :: BindingResource :: TextureView (bindings . depth_texture_msaa) , } , wgpu :: BindGroupEntry { binding : 11 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture_array_2d) , } , wgpu :: BindGroupEntry { binding : 12 , resource : wgpu :: BindingResource :: TextureView (bindings . color_texture_array_cube) , } , wgpu :: BindGroupEntry { binding : 13 , resource : wgpu :: BindingResource :: TextureViewArray (bindings . texture_binding_array) , } , wgpu :: BindGroupEntry { binding : 14 , resource : wgpu :: BindingResource :: SamplerArray (bindings . sampler_binding_array) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug)] pub struct BindGroup1 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout1 < 'a > { pub transforms : wgpu :: BufferBinding < 'a > , pub scalar : wgpu :: BufferBinding < 'a > , pub vector : wgpu :: BufferBinding < 'a > , pub matrix : wgpu :: BufferBinding < 'a > , pub transforms_array : & 'a [wgpu :: BufferBinding < 'a > ; 2] , pub scalar_array : & 'a [wgpu :: BufferBinding < 'a > ; 3] , pub vector_array : & 'a [wgpu :: BufferBinding < 'a > ; 4] , pub matrix_array : & 'a [wgpu :: BufferBinding < 'a > ; 5] } const LAYOUT_DESCRIPTOR1 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor1") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 1 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 2 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 3 , visibility : wgpu :: ShaderStages :: VERTEX_FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , } , wgpu :: BindGroupLayoutEntry { binding : 4 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : Some (std :: num :: NonZeroU32 :: new (2) . unwrap ()) , } , wgpu :: BindGroupLayoutEntry { binding : 5 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : Some (std :: num :: NonZeroU32 :: new (3) . unwrap ()) , } , wgpu :: BindGroupLayoutEntry { binding : 6 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : Some (std :: num :: NonZeroU32 :: new (4) . unwrap ()) , } , wgpu :: BindGroupLayoutEntry { binding : 7 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : Some (std :: num :: NonZeroU32 :: new (5) . unwrap ()) , }] , } ; impl BindGroup1 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR1) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout1) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR1) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . transforms) , } , wgpu :: BindGroupEntry { binding : 1 , resource : wgpu :: BindingResource :: Buffer (bindings . scalar) , } , wgpu :: BindGroupEntry { binding : 2 , resource : wgpu :: BindingResource :: Buffer (bindings . vector) , } , wgpu :: BindGroupEntry { binding : 3 , resource : wgpu :: BindingResource :: Buffer (bindings . matrix) , } , wgpu :: BindGroupEntry { binding : 4 , resource : wgpu :: BindingResource :: BufferArray (bindings . transforms_array) , } , wgpu :: BindGroupEntry { binding : 5 , resource : wgpu :: BindingResource :: BufferArray (bindings . scalar_array) , } , wgpu :: BindGroupEntry { binding : 6 , resource : wgpu :: BindingResource :: BufferArray (bindings . vector_array) , } , wgpu :: BindGroupEntry { binding : 7 , resource : wgpu :: BindingResource :: BufferArray (bindings . matrix_array) , }] , label : Some ("BindGroup1") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (1 , & self . 0 , & []) ; } } # [derive (Debug)] pub struct BindGroup2 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout2 < 'a > { pub acc_struct : & 'a wgpu :: Tlas } const LAYOUT_DESCRIPTOR2 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor2") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: NONE , ty : wgpu :: BindingType :: AccelerationStructure { vertex_return : false } , count : None , }] , } ; impl BindGroup2 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR2) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout2) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR2) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: AccelerationStructure (bindings . acc_struct) , }] , label : Some ("BindGroup2") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (2 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 , pub bind_group1 : & 'a BindGroup1 , pub bind_group2 : & 'a BindGroup2 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; self . bind_group1 . set (pass) ; self . bind_group2 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0 , bind_group1 : & bind_groups :: BindGroup1 , bind_group2 : & bind_groups :: BindGroup2) { bind_group0 . set (pass) ; bind_group1 . set (pass) ; bind_group2 . set (pass) ; } [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'bindgroup::tests::bind_groups_module_vertex_fragment' (31) panicked at src/bindgroup.rs:636: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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e72f75d - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e72f75d - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex_fragment::{{closure}}::he4838f4b23a3cf53 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:802:17 [INFO] [stdout] 22: 0x5c551e6f9534 - insta::settings::Settings::bind::h8c9a531b34b23771 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e72f23b - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex_fragment::h1b4954cf8ac85ae4 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:801:22 [INFO] [stdout] 24: 0x5c551e72f317 - wgsl_to_wgpu::bindgroup::tests::bind_groups_module_vertex_fragment::{{closure}}::h3b0af699d6fb4587 [INFO] [stdout] at /opt/rustwide/workdir/src/bindgroup.rs:633:44 [INFO] [stdout] 25: 0x5c551e731126 - core::ops::function::FnOnce::call_once::hca00ecc6f0a4a992 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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:1240 [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(&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(&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( [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 { [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, [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 { [INFO] [stdout] 126 │- pub entry_point: &'static str, [INFO] [stdout] 127 │- pub targets: [Option; 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, [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; 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,\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n a: vec4,\n b: Root,\n c: shared_Shared\n}\n\nstruct Root {\n c: vec4\n}\n\nstruct shared_Shared {\n d: vec4\n}\n\nstruct shared_VertexInput {\n @location(0) position: vec3\n}\n\nstruct shared_VertexOutput {\n @builtin(position) clip_position: vec4,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar 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 {\n return bindings_uniforms.b.a * vec4(0.0);\n}" ; [INFO] [stdout] 152 │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule { [INFO] [stdout] 153 │- let source = std::borrow::Cow::Borrowed(SOURCE); [INFO] [stdout] 154 │- device.create_shader_module(wgpu::ShaderModuleDescriptor { [INFO] [stdout] 155 │- label: None, [INFO] [stdout] 156 │- source: wgpu::ShaderSource::Wgsl(source), [INFO] [stdout] 157 │- }) [INFO] [stdout] 158 │-} [INFO] [stdout] 159 │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout { [INFO] [stdout] 160 │- device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { [INFO] [stdout] 161 │- label: None, [INFO] [stdout] 162 │- bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)], [INFO] [stdout] 163 │- push_constant_ranges: &[], [INFO] [stdout] 164 │- }) [INFO] [stdout] 165 │-} [INFO] [stdout] 166 │-#[repr(C)] [INFO] [stdout] 167 │-#[derive(Debug, Copy, Clone, PartialEq)] [INFO] [stdout] 168 │-pub struct Root { [INFO] [stdout] 169 │- pub c: [f32; 4], [INFO] [stdout] 170 │-} [INFO] [stdout] 171 │-pub mod shared { [INFO] [stdout] 172 │- #[repr(C)] [INFO] [stdout] 173 │- #[derive(Debug, Copy, Clone, PartialEq)] [INFO] [stdout] 174 │- pub struct Shared { [INFO] [stdout] 175 │- pub d: [f32; 4], [INFO] [stdout] 176 │- } [INFO] [stdout] 177 │- pub const TEST: f32 = 1f32; [INFO] [stdout] 178 │- #[repr(C)] [INFO] [stdout] 179 │- #[derive(Debug, Copy, Clone, PartialEq)] [INFO] [stdout] 180 │- pub struct VertexInput { [INFO] [stdout] 181 │- pub position: [f32; 3], [INFO] [stdout] 182 │- } [INFO] [stdout] 183 │- impl VertexInput { [INFO] [stdout] 184 │- pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 1] = [wgpu::VertexAttribute { [INFO] [stdout] 185 │- format: wgpu::VertexFormat::Float32x3, [INFO] [stdout] 186 │- offset: std::mem::offset_of!(VertexInput, position) as u64, [INFO] [stdout] 187 │- shader_location: 0, [INFO] [stdout] 188 │- }]; [INFO] [stdout] 189 │- pub const fn vertex_buffer_layout( [INFO] [stdout] 190 │- step_mode: wgpu::VertexStepMode, [INFO] [stdout] 191 │- ) -> wgpu::VertexBufferLayout<'static> { [INFO] [stdout] 192 │- wgpu::VertexBufferLayout { [INFO] [stdout] 193 │- array_stride: std::mem::size_of::() 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,\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n a: vec4,\n b: Root,\n c: shared_Shared\n}\n\nstruct Root {\n c: vec4\n}\n\nstruct shared_Shared {\n d: vec4\n}\n\nstruct shared_VertexInput {\n @location(0) position: vec3\n}\n\nstruct shared_VertexOutput {\n @builtin(position) clip_position: vec4,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar 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 {\n return bindings_uniforms.b.a * vec4(0.0);\n}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , push_constant_ranges : & [] , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Root { pub c : [f32 ; 4] } pub mod shared { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Shared { pub d : [f32 ; 4] } pub const TEST : f32 = 1f32 ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct VertexInput { pub position : [f32 ; 3] } impl VertexInput { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 1] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x3 , offset : std :: mem :: offset_of ! (VertexInput , position) as u64 , shader_location : 0 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput > () as u64 , step_mode , attributes : & VertexInput :: VERTEX_ATTRIBUTES } } } } pub mod uniforms { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Uniforms { pub a : [f32 ; 4] , pub b : nested :: Nested } pub mod nested { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Nested { pub a : [f32 ; 4] , pub b : super :: super :: Root , pub c : super :: super :: shared :: Shared } } } [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'test::add_single_root_module' (1710) panicked at src/lib.rs:1240: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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e723449 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e723449 - wgsl_to_wgpu::test::add_single_root_module::{{closure}}::hdee8fce7c73b0b7c [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:815:17 [INFO] [stdout] 22: 0x5c551e6f9a9f - insta::settings::Settings::bind::hda83fd9265f9fed8 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e722fab - wgsl_to_wgpu::test::add_single_root_module::h9c17ae0cd2412d68 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:814:22 [INFO] [stdout] 24: 0x5c551e723057 - wgsl_to_wgpu::test::add_single_root_module::{{closure}}::h7aab1749d7d936dd [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:1224:32 [INFO] [stdout] 25: 0x5c551e730f06 - core::ops::function::FnOnce::call_once::ha4a5323648e211e3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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:1273 [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(&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(&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( [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 { [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, [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 { [INFO] [stdout] 128 │- pub entry_point: &'static str, [INFO] [stdout] 129 │- pub targets: [Option; 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, [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; 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,\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n a: vec4,\n b: Root,\n c: shared_Shared\n}\n\nstruct Root {\n c: vec4\n}\n\nstruct shared_Shared {\n d: vec4\n}\n\nstruct shared_VertexInput {\n @location(0) position: vec3\n}\n\nstruct shared_VertexOutput {\n @builtin(position) clip_position: vec4,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar 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 {\n return bindings_uniforms.b.a * vec4(0.0);\n}" ; [INFO] [stdout] 154 │- pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule { [INFO] [stdout] 155 │- let source = std::borrow::Cow::Borrowed(SOURCE); [INFO] [stdout] 156 │- device.create_shader_module(wgpu::ShaderModuleDescriptor { [INFO] [stdout] 157 │- label: None, [INFO] [stdout] 158 │- source: wgpu::ShaderSource::Wgsl(source), [INFO] [stdout] 159 │- }) [INFO] [stdout] 160 │- } [INFO] [stdout] 161 │- pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout { [INFO] [stdout] 162 │- device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { [INFO] [stdout] 163 │- label: None, [INFO] [stdout] 164 │- bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)], [INFO] [stdout] 165 │- push_constant_ranges: &[], [INFO] [stdout] 166 │- }) [INFO] [stdout] 167 │- } [INFO] [stdout] 168 │- #[repr(C)] [INFO] [stdout] 169 │- #[derive(Debug, Copy, Clone, PartialEq)] [INFO] [stdout] 170 │- pub struct Root { [INFO] [stdout] 171 │- pub c: [f32; 4], [INFO] [stdout] 172 │- } [INFO] [stdout] 173 │-} [INFO] [stdout] 174 │-pub mod shaders { [INFO] [stdout] 175 │- pub mod shader2 { [INFO] [stdout] 176 │- pub mod bind_groups { [INFO] [stdout] 177 │- #[derive(Debug)] [INFO] [stdout] 178 │- pub struct BindGroup0(wgpu::BindGroup); [INFO] [stdout] 179 │- #[derive(Debug)] [INFO] [stdout] 180 │- pub struct BindGroupLayout0<'a> { [INFO] [stdout] 181 │- pub uniforms: wgpu::BufferBinding<'a>, [INFO] [stdout] 182 │- } [INFO] [stdout] 183 │- const LAYOUT_DESCRIPTOR0: wgpu::BindGroupLayoutDescriptor = [INFO] [stdout] 184 │- wgpu::BindGroupLayoutDescriptor { [INFO] [stdout] 185 │- label: Some("LayoutDescriptor0"), [INFO] [stdout] 186 │- entries: &[wgpu::BindGroupLayoutEntry { [INFO] [stdout] 187 │- binding: 0, [INFO] [stdout] 188 │- visibility: wgpu::ShaderStages::FRAGMENT, [INFO] [stdout] 189 │- ty: wgpu::BindingType::Buffer { [INFO] [stdout] 190 │- ty: wgpu::BufferBindingType::Uniform, [INFO] [stdout] 191 │- has_dynamic_offset: false, [INFO] [stdout] 192 │- min_binding_size: None, [INFO] [stdout] 193 │- }, [INFO] [stdout] 194 │- count: None, [INFO] [stdout] 195 │- }], [INFO] [stdout] 196 │- }; [INFO] [stdout] 197 │- impl BindGroup0 { [INFO] [stdout] 198 │- pub fn get_bind_group_layout(device: &wgpu::Device) -> wgpu::BindGroupLayout { [INFO] [stdout] 199 │- device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0) [INFO] [stdout] 200 │- } [INFO] [stdout] 201 │- pub fn from_bindings(device: &wgpu::Device, bindings: BindGroupLayout0) -> Self { [INFO] [stdout] 202 │- let bind_group_layout = device.create_bind_group_layout(&LAYOUT_DESCRIPTOR0); [INFO] [stdout] 203 │- let bind_group = device.create_bind_group(&wgpu::BindGroupDescriptor { [INFO] [stdout] 204 │- layout: &bind_group_layout, [INFO] [stdout] 205 │- entries: &[wgpu::BindGroupEntry { [INFO] [stdout] 206 │- binding: 0, [INFO] [stdout] 207 │- resource: wgpu::BindingResource::Buffer(bindings.uniforms), [INFO] [stdout] 208 │- }], [INFO] [stdout] 209 │- label: Some("BindGroup0"), [INFO] [stdout] 210 │- }); [INFO] [stdout] 211 │- Self(bind_group) [INFO] [stdout] 212 │- } [INFO] [stdout] 213 │- pub fn set(&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(&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( [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 { [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, [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 { [INFO] [stdout] 302 │- pub entry_point: &'static str, [INFO] [stdout] 303 │- pub targets: [Option; 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, [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; 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,\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n a: vec4,\n b: Root,\n c: shared_Shared\n}\n\nstruct Root {\n c: vec4\n}\n\nstruct shared_Shared {\n d: vec4\n}\n\nstruct shared_VertexInput {\n @location(0) position: vec3\n}\n\nstruct shared_VertexOutput {\n @builtin(position) clip_position: vec4,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar 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 {\n return bindings_uniforms.b.a * vec4(0.0);\n}" ; [INFO] [stdout] 328 │- pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule { [INFO] [stdout] 329 │- let source = std::borrow::Cow::Borrowed(SOURCE); [INFO] [stdout] 330 │- device.create_shader_module(wgpu::ShaderModuleDescriptor { [INFO] [stdout] 331 │- label: None, [INFO] [stdout] 332 │- source: wgpu::ShaderSource::Wgsl(source), [INFO] [stdout] 333 │- }) [INFO] [stdout] 334 │- } [INFO] [stdout] 335 │- pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout { [INFO] [stdout] 336 │- device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { [INFO] [stdout] 337 │- label: None, [INFO] [stdout] 338 │- bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)], [INFO] [stdout] 339 │- push_constant_ranges: &[], [INFO] [stdout] 340 │- }) [INFO] [stdout] 341 │- } [INFO] [stdout] 342 │- #[repr(C)] [INFO] [stdout] 343 │- #[derive(Debug, Copy, Clone, PartialEq)] [INFO] [stdout] 344 │- pub struct Root { [INFO] [stdout] 345 │- pub c: [f32; 4], [INFO] [stdout] 346 │- } [INFO] [stdout] 347 │- } [INFO] [stdout] 348 │-} [INFO] [stdout] 349 │-pub mod shared { [INFO] [stdout] 350 │- #[repr(C)] [INFO] [stdout] 351 │- #[derive(Debug, Copy, Clone, PartialEq)] [INFO] [stdout] 352 │- pub struct Shared { [INFO] [stdout] 353 │- pub d: [f32; 4], [INFO] [stdout] 354 │- } [INFO] [stdout] 355 │- pub const TEST: f32 = 1f32; [INFO] [stdout] 356 │- #[repr(C)] [INFO] [stdout] 357 │- #[derive(Debug, Copy, Clone, PartialEq)] [INFO] [stdout] 358 │- pub struct VertexInput { [INFO] [stdout] 359 │- pub position: [f32; 3], [INFO] [stdout] 360 │- } [INFO] [stdout] 361 │- impl VertexInput { [INFO] [stdout] 362 │- pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 1] = [wgpu::VertexAttribute { [INFO] [stdout] 363 │- format: wgpu::VertexFormat::Float32x3, [INFO] [stdout] 364 │- offset: std::mem::offset_of!(VertexInput, position) as u64, [INFO] [stdout] 365 │- shader_location: 0, [INFO] [stdout] 366 │- }]; [INFO] [stdout] 367 │- pub const fn vertex_buffer_layout( [INFO] [stdout] 368 │- step_mode: wgpu::VertexStepMode, [INFO] [stdout] 369 │- ) -> wgpu::VertexBufferLayout<'static> { [INFO] [stdout] 370 │- wgpu::VertexBufferLayout { [INFO] [stdout] 371 │- array_stride: std::mem::size_of::() 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,\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n a: vec4,\n b: Root,\n c: shared_Shared\n}\n\nstruct Root {\n c: vec4\n}\n\nstruct shared_Shared {\n d: vec4\n}\n\nstruct shared_VertexInput {\n @location(0) position: vec3\n}\n\nstruct shared_VertexOutput {\n @builtin(position) clip_position: vec4,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar 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 {\n return bindings_uniforms.b.a * vec4(0.0);\n}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , push_constant_ranges : & [] , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Root { pub c : [f32 ; 4] } } pub mod shaders { pub mod shader2 { pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub uniforms : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: FRAGMENT , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Uniform , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . uniforms) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } pub const ENTRY_VERT : & str = "vert" ; pub const ENTRY_FRAG : & str = "frag" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn vert_entry (vertex_input : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_VERT , buffers : [VertexInput :: vertex_buffer_layout (vertex_input)] , constants : Default :: default () } } # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn frag_entry (targets : [Option < wgpu :: ColorTargetState > ; 1] ,) -> FragmentEntry < 1 > { FragmentEntry { entry_point : ENTRY_FRAG , targets , constants : Default :: default () } } pub const SOURCE : & str = "struct uniforms_Uniforms {\n a: vec4,\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n a: vec4,\n b: Root,\n c: shared_Shared\n}\n\nstruct Root {\n c: vec4\n}\n\nstruct shared_Shared {\n d: vec4\n}\n\nstruct shared_VertexInput {\n @location(0) position: vec3\n}\n\nstruct shared_VertexOutput {\n @builtin(position) clip_position: vec4,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar 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 {\n return bindings_uniforms.b.a * vec4(0.0);\n}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , push_constant_ranges : & [] , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Root { pub c : [f32 ; 4] } } } pub mod shared { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Shared { pub d : [f32 ; 4] } pub const TEST : f32 = 1f32 ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct VertexInput { pub position : [f32 ; 3] } impl VertexInput { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 1] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x3 , offset : std :: mem :: offset_of ! (VertexInput , position) as u64 , shader_location : 0 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput > () as u64 , step_mode , attributes : & VertexInput :: VERTEX_ATTRIBUTES } } } } pub mod uniforms { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Uniforms { pub a : [f32 ; 4] , pub b : nested :: Nested } pub mod nested { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Nested { pub a : [f32 ; 4] , pub b : super :: super :: Root , pub c : super :: super :: shared :: Shared } } } [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'test::add_duplicate_module_different_paths' (1641) panicked at src/lib.rs:1273: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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e726bc9 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e726bc9 - wgsl_to_wgpu::test::add_duplicate_module_different_paths::{{closure}}::hacc91b334bab9c16 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:815:17 [INFO] [stdout] 22: 0x5c551e6f93bf - insta::settings::Settings::bind::h824b14cf9603d020 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e72671b - wgsl_to_wgpu::test::add_duplicate_module_different_paths::heffa8e696f055d50 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:814:22 [INFO] [stdout] 24: 0x5c551e7267d7 - wgsl_to_wgpu::test::add_duplicate_module_different_paths::{{closure}}::h8e48ac0bd04e4d68 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:1244:46 [INFO] [stdout] 25: 0x5c551e730846 - core::ops::function::FnOnce::call_once::h234e80ca98548df2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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' (35) panicked at src/structs.rs:507:9: [INFO] [stdout] assertion failed: `(left == right)` [INFO] [stdout] [INFO] [stdout] Diff < left / right > : [INFO] [stdout] <# [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f64 , } [INFO] [stdout] ># [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f64 } [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551e6e65a4 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_f64_vec::hd26bcac1045bed10 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:787:13 [INFO] [stdout] 20: 0x5c551e6e6627 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_f64_vec::{{closure}}::hf92955983860dd00 [INFO] [stdout] at /opt/rustwide/workdir/src/structs.rs:476:44 [INFO] [stdout] 21: 0x5c551e730746 - core::ops::function::FnOnce::call_once::h1641dd1423f6c51a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 22: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 24: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 25: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 26: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 27: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 28: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 29: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 30: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 31: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 32: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 33: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 34: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 35: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 36: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 37: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 38: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 39: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 40: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 41: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 42: 0x7f07d4e3aaa4 - [INFO] [stdout] 43: 0x7f07d4ec7a34 - clone [INFO] [stdout] 44: 0x0 - [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' (37) panicked at src/structs.rs:461:9: [INFO] [stdout] assertion failed: `(left == right)` [INFO] [stdout] [INFO] [stdout] Diff < left / right > : [INFO] [stdout] <# [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 , } [INFO] [stdout] ># [repr (C)] # [derive (Debug , Copy , Clone , PartialEq , bytemuck :: Pod , bytemuck :: Zeroable)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 } [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551e6e9514 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_skip_input_layout_validation::h096d3490eaeb0086 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:787:13 [INFO] [stdout] 20: 0x5c551e6e9597 - wgsl_to_wgpu::structs::tests::write_all_structs_bytemuck_skip_input_layout_validation::{{closure}}::hd697bec57a4d3718 [INFO] [stdout] at /opt/rustwide/workdir/src/structs.rs:430:65 [INFO] [stdout] 21: 0x5c551e730c96 - core::ops::function::FnOnce::call_once::h82e2f70f535e8bcf [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 22: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 24: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 25: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 26: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 27: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 28: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 29: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 30: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 31: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 32: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 33: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 34: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 35: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 36: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 37: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 38: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 39: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 40: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 41: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 42: 0x7f07d4e3aaa4 - [INFO] [stdout] 43: 0x7f07d4ec7a34 - clone [INFO] [stdout] 44: 0x0 - [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' (46) panicked at src/structs.rs:414:9: [INFO] [stdout] assertion failed: `(left == right)` [INFO] [stdout] [INFO] [stdout] Diff < left / right > : [INFO] [stdout] <# [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 , pub d : f64 , } [INFO] [stdout] ># [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Input0 { pub a : u32 , pub b : i32 , pub c : f32 , pub d : f64 } [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551e6e72cf - wgsl_to_wgpu::structs::tests::write_all_structs_skip_stage_outputs::h949c76064e280467 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:787:13 [INFO] [stdout] 20: 0x5c551e6e7357 - wgsl_to_wgpu::structs::tests::write_all_structs_skip_stage_outputs::{{closure}}::h6696b7f8750a10ff [INFO] [stdout] at /opt/rustwide/workdir/src/structs.rs:375:46 [INFO] [stdout] 21: 0x5c551e731226 - core::ops::function::FnOnce::call_once::hda9199cf60add749 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 22: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 24: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 25: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 26: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 27: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 28: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 29: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 30: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 31: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 32: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 33: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 34: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 35: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 36: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 37: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 38: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 39: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 40: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 41: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 42: 0x7f07d4e3aaa4 - [INFO] [stdout] 43: 0x7f07d4ec7a34 - clone [INFO] [stdout] 44: 0x0 - [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:1220 [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(&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(&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( [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 { [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, [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 { [INFO] [stdout] 126 │- pub entry_point: &'static str, [INFO] [stdout] 127 │- pub targets: [Option; 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, [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; 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,\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n a: vec4,\n b: Root,\n c: shared_Shared\n}\n\nstruct Root {\n c: vec4\n}\n\nstruct shared_Shared {\n d: vec4\n}\n\nstruct shared_VertexInput {\n @location(0) position: vec3\n}\n\nstruct shared_VertexOutput {\n @builtin(position) clip_position: vec4,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar 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 {\n return bindings_uniforms.b.a * vec4(0.0);\n}" ; [INFO] [stdout] 152 │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule { [INFO] [stdout] 153 │- let source = std::borrow::Cow::Borrowed(SOURCE); [INFO] [stdout] 154 │- device.create_shader_module(wgpu::ShaderModuleDescriptor { [INFO] [stdout] 155 │- label: None, [INFO] [stdout] 156 │- source: wgpu::ShaderSource::Wgsl(source), [INFO] [stdout] 157 │- }) [INFO] [stdout] 158 │-} [INFO] [stdout] 159 │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout { [INFO] [stdout] 160 │- device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { [INFO] [stdout] 161 │- label: None, [INFO] [stdout] 162 │- bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)], [INFO] [stdout] 163 │- push_constant_ranges: &[], [INFO] [stdout] 164 │- }) [INFO] [stdout] 165 │-} [INFO] [stdout] 166 │-#[repr(C)] [INFO] [stdout] 167 │-#[derive(Debug, Copy, Clone, PartialEq)] [INFO] [stdout] 168 │-pub struct Root { [INFO] [stdout] 169 │- pub c: [f32; 4], [INFO] [stdout] 170 │-} [INFO] [stdout] 171 │-pub mod shared { [INFO] [stdout] 172 │- #[repr(C)] [INFO] [stdout] 173 │- #[derive(Debug, Copy, Clone, PartialEq)] [INFO] [stdout] 174 │- pub struct Shared { [INFO] [stdout] 175 │- pub d: [f32; 4], [INFO] [stdout] 176 │- } [INFO] [stdout] 177 │- pub const TEST: f32 = 1f32; [INFO] [stdout] 178 │- #[repr(C)] [INFO] [stdout] 179 │- #[derive(Debug, Copy, Clone, PartialEq)] [INFO] [stdout] 180 │- pub struct VertexInput { [INFO] [stdout] 181 │- pub position: [f32; 3], [INFO] [stdout] 182 │- } [INFO] [stdout] 183 │- impl VertexInput { [INFO] [stdout] 184 │- pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 1] = [wgpu::VertexAttribute { [INFO] [stdout] 185 │- format: wgpu::VertexFormat::Float32x3, [INFO] [stdout] 186 │- offset: std::mem::offset_of!(VertexInput, position) as u64, [INFO] [stdout] 187 │- shader_location: 0, [INFO] [stdout] 188 │- }]; [INFO] [stdout] 189 │- pub const fn vertex_buffer_layout( [INFO] [stdout] 190 │- step_mode: wgpu::VertexStepMode, [INFO] [stdout] 191 │- ) -> wgpu::VertexBufferLayout<'static> { [INFO] [stdout] 192 │- wgpu::VertexBufferLayout { [INFO] [stdout] 193 │- array_stride: std::mem::size_of::() 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,\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_Uniforms2 {\n b: uniforms_nested_Nested,\n}\n\nstruct uniforms_nested_Nested {\n a: vec4,\n b: Root,\n c: shared_Shared\n}\n\nstruct Root {\n c: vec4\n}\n\nstruct shared_Shared {\n d: vec4\n}\n\nstruct shared_VertexInput {\n @location(0) position: vec3\n}\n\nstruct shared_VertexOutput {\n @builtin(position) clip_position: vec4,\n};\n\nconst shared_TEST: f32 = 1.0;\n\n@group(0) @binding(0)\nvar 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 {\n return bindings_uniforms.b.a * vec4(0.0);\n}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , push_constant_ranges : & [] , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Root { pub c : [f32 ; 4] } pub mod shared { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Shared { pub d : [f32 ; 4] } pub const TEST : f32 = 1f32 ; # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct VertexInput { pub position : [f32 ; 3] } impl VertexInput { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 1] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x3 , offset : std :: mem :: offset_of ! (VertexInput , position) as u64 , shader_location : 0 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < VertexInput > () as u64 , step_mode , attributes : & VertexInput :: VERTEX_ATTRIBUTES } } } } pub mod uniforms { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Uniforms { pub a : [f32 ; 4] , pub b : nested :: Nested } pub mod nested { # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Nested { pub a : [f32 ; 4] , pub b : super :: super :: Root , pub c : super :: super :: shared :: Shared } } } [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'test::single_root_module' (5001) panicked at src/lib.rs:1220: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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e7228c9 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e7228c9 - wgsl_to_wgpu::test::single_root_module::{{closure}}::h91b99747ae1108e3 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:815:17 [INFO] [stdout] 22: 0x5c551e6f91bf - insta::settings::Settings::bind::h5eaa6b51de0cf8f3 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e722463 - wgsl_to_wgpu::test::single_root_module::h7e38d7858f53febc [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:814:22 [INFO] [stdout] 24: 0x5c551e7229b7 - wgsl_to_wgpu::test::single_root_module::{{closure}}::ha2682d9f2a7479d5 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:1209:28 [INFO] [stdout] 25: 0x5c551e730c56 - core::ops::function::FnOnce::call_once::h804a194ebba0cdf2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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:1077 [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::() 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' (5474) panicked at src/lib.rs:1077: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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e72a154 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e72a154 - wgsl_to_wgpu::test::write_vertex_module_single_input_float16::{{closure}}::h184b9667f06f9a99 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:802:17 [INFO] [stdout] 22: 0x5c551e6f9734 - insta::settings::Settings::bind::hbedebf677dfc5243 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e729c36 - wgsl_to_wgpu::test::write_vertex_module_single_input_float16::h332bc6a849164654 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:801:22 [INFO] [stdout] 24: 0x5c551e729cf7 - wgsl_to_wgpu::test::write_vertex_module_single_input_float16::{{closure}}::h0322339bf122fc6e [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:1060:50 [INFO] [stdout] 25: 0x5c551e7308c6 - core::ops::function::FnOnce::call_once::h3909197e3396ab4d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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:938 [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 { [INFO] [stdout] 4 │- pub entry_point: &'static str, [INFO] [stdout] 5 │- pub targets: [Option; 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, [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; 0]) -> FragmentEntry<0> { [INFO] [stdout] 23 │- FragmentEntry { [INFO] [stdout] 24 │- entry_point: ENTRY_MAIN, [INFO] [stdout] 25 │- targets, [INFO] [stdout] 26 │- constants: Default::default(), [INFO] [stdout] 27 │- } [INFO] [stdout] 28 │-} [INFO] [stdout] 29 │-pub const SOURCE: &str = "@fragment fn main() {}"; [INFO] [stdout] 30 │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule { [INFO] [stdout] 31 │- let source = std::borrow::Cow::Borrowed(SOURCE); [INFO] [stdout] 32 │- device.create_shader_module(wgpu::ShaderModuleDescriptor { [INFO] [stdout] 33 │- label: None, [INFO] [stdout] 34 │- source: wgpu::ShaderSource::Wgsl(source), [INFO] [stdout] 35 │- }) [INFO] [stdout] 36 │-} [INFO] [stdout] 37 │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout { [INFO] [stdout] 38 │- device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { [INFO] [stdout] 39 │- label: None, [INFO] [stdout] 40 │- bind_group_layouts: &[], [INFO] [stdout] 41 │- push_constant_ranges: &[], [INFO] [stdout] 42 │- }) [INFO] [stdout] 43 │-} [INFO] [stdout] 1 │+pub const ENTRY_MAIN : & str = "main" ; # [derive (Debug)] pub struct FragmentEntry < const N : usize > { pub entry_point : & 'static str , pub targets : [Option < wgpu :: ColorTargetState > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn fragment_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a FragmentEntry < N > ,) -> wgpu :: FragmentState < 'a > { wgpu :: FragmentState { module , entry_point : Some (entry . entry_point) , targets : & entry . targets , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn main_entry (targets : [Option < wgpu :: ColorTargetState > ; 0] ,) -> FragmentEntry < 0 > { FragmentEntry { entry_point : ENTRY_MAIN , targets , constants : Default :: default () } } pub const SOURCE : & str = "@fragment fn main() {}" ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , push_constant_ranges : & [] , }) } [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'test::create_shader_modules_source_rustfmt' (4974) panicked at src/lib.rs:938: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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e727409 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e727409 - wgsl_to_wgpu::test::create_shader_modules_source_rustfmt::{{closure}}::h7bbb5ff0145a9256 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:815:17 [INFO] [stdout] 22: 0x5c551e6f9b3f - insta::settings::Settings::bind::hdcc33fadbe135c34 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e726f6e - wgsl_to_wgpu::test::create_shader_modules_source_rustfmt::h51918903c603e168 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:814:22 [INFO] [stdout] 24: 0x5c551e727017 - wgsl_to_wgpu::test::create_shader_modules_source_rustfmt::{{closure}}::h0c5260ea22138568 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:927:46 [INFO] [stdout] 25: 0x5c551e731266 - core::ops::function::FnOnce::call_once::he744e72115308694 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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:1306 [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(&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(&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( [INFO] [stdout] 90 │- pass: &mut P, [INFO] [stdout] 91 │- bind_group0: &bind_groups::BindGroup0, [INFO] [stdout] 92 │-) { [INFO] [stdout] 93 │- bind_group0.set(pass); [INFO] [stdout] 94 │-} [INFO] [stdout] 95 │-pub mod compute { [INFO] [stdout] 96 │- pub const MAIN_WORKGROUP_SIZE: [u32; 3] = [1, 1, 1]; [INFO] [stdout] 97 │- pub fn create_main_pipeline(device: &wgpu::Device) -> wgpu::ComputePipeline { [INFO] [stdout] 98 │- let module = super::create_shader_module(device); [INFO] [stdout] 99 │- let layout = super::create_pipeline_layout(device); [INFO] [stdout] 100 │- device.create_compute_pipeline(&wgpu::ComputePipelineDescriptor { [INFO] [stdout] 101 │- label: Some("Compute Pipeline main"), [INFO] [stdout] 102 │- layout: Some(&layout), [INFO] [stdout] 103 │- module: &module, [INFO] [stdout] 104 │- entry_point: Some("main"), [INFO] [stdout] 105 │- compilation_options: Default::default(), [INFO] [stdout] 106 │- cache: Default::default(), [INFO] [stdout] 107 │- }) [INFO] [stdout] 108 │- } [INFO] [stdout] 109 │-} [INFO] [stdout] 110 │-pub const ENTRY_MAIN: &str = "main"; [INFO] [stdout] 111 │-pub const SOURCE: &str = include_str!("shader.wgsl"); [INFO] [stdout] 112 │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule { [INFO] [stdout] 113 │- let source = std::borrow::Cow::Borrowed(SOURCE); [INFO] [stdout] 114 │- device.create_shader_module(wgpu::ShaderModuleDescriptor { [INFO] [stdout] 115 │- label: None, [INFO] [stdout] 116 │- source: wgpu::ShaderSource::Wgsl(source), [INFO] [stdout] 117 │- }) [INFO] [stdout] 118 │-} [INFO] [stdout] 119 │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout { [INFO] [stdout] 120 │- device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { [INFO] [stdout] 121 │- label: None, [INFO] [stdout] 122 │- bind_group_layouts: &[&bind_groups::BindGroup0::get_bind_group_layout(device)], [INFO] [stdout] 123 │- push_constant_ranges: &[], [INFO] [stdout] 124 │- }) [INFO] [stdout] 125 │-} [INFO] [stdout] 1 │+pub mod bind_groups { # [derive (Debug)] pub struct BindGroup0 (wgpu :: BindGroup) ; # [derive (Debug)] pub struct BindGroupLayout0 < 'a > { pub counter : wgpu :: BufferBinding < 'a > } const LAYOUT_DESCRIPTOR0 : wgpu :: BindGroupLayoutDescriptor = wgpu :: BindGroupLayoutDescriptor { label : Some ("LayoutDescriptor0") , entries : & [wgpu :: BindGroupLayoutEntry { binding : 0 , visibility : wgpu :: ShaderStages :: COMPUTE , ty : wgpu :: BindingType :: Buffer { ty : wgpu :: BufferBindingType :: Storage { read_only : false } , has_dynamic_offset : false , min_binding_size : None , } , count : None , }] , } ; impl BindGroup0 { pub fn get_bind_group_layout (device : & wgpu :: Device) -> wgpu :: BindGroupLayout { device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) } pub fn from_bindings (device : & wgpu :: Device , bindings : BindGroupLayout0) -> Self { let bind_group_layout = device . create_bind_group_layout (& LAYOUT_DESCRIPTOR0) ; let bind_group = device . create_bind_group (& wgpu :: BindGroupDescriptor { layout : & bind_group_layout , entries : & [wgpu :: BindGroupEntry { binding : 0 , resource : wgpu :: BindingResource :: Buffer (bindings . counter) , }] , label : Some ("BindGroup0") , }) ; Self (bind_group) } pub fn set < P : SetBindGroup > (& self , pass : & mut P) { pass . set_bind_group (0 , & self . 0 , & []) ; } } # [derive (Debug , Copy , Clone)] pub struct BindGroups < 'a > { pub bind_group0 : & 'a BindGroup0 } impl BindGroups < '_ > { pub fn set < P : SetBindGroup > (& self , pass : & mut P) { self . bind_group0 . set (pass) ; } } pub trait SetBindGroup { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) ; } impl SetBindGroup for wgpu :: ComputePass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderPass < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } impl SetBindGroup for wgpu :: RenderBundleEncoder < '_ > { fn set_bind_group (& mut self , index : u32 , bind_group : & wgpu :: BindGroup , offsets : & [wgpu :: DynamicOffset] ,) { self . set_bind_group (index , bind_group , offsets) ; } } } pub fn set_bind_groups < P : bind_groups :: SetBindGroup > (pass : & mut P , bind_group0 : & bind_groups :: BindGroup0) { bind_group0 . set (pass) ; } pub mod compute { pub const MAIN_WORKGROUP_SIZE : [u32 ; 3] = [1 , 1 , 1] ; pub fn create_main_pipeline (device : & wgpu :: Device) -> wgpu :: ComputePipeline { let module = super :: create_shader_module (device) ; let layout = super :: create_pipeline_layout (device) ; device . create_compute_pipeline (& wgpu :: ComputePipelineDescriptor { label : Some ("Compute Pipeline main") , layout : Some (& layout) , module : & module , entry_point : Some ("main") , compilation_options : Default :: default () , cache : Default :: default () , }) } } pub const ENTRY_MAIN : & str = "main" ; pub const SOURCE : & str = include_str ! ("shader.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [& bind_groups :: BindGroup0 :: get_bind_group_layout (device)] , push_constant_ranges : & [] , }) } [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'test::shader_stage_collection' (4990) panicked at src/lib.rs:1306: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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e723c69 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e723c69 - wgsl_to_wgpu::test::shader_stage_collection::{{closure}}::hb1f630fa7bc05e46 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:815:17 [INFO] [stdout] 22: 0x5c551e6f967f - insta::settings::Settings::bind::h9a8384adf366a993 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e7237d8 - wgsl_to_wgpu::test::shader_stage_collection::hcfb5828875ae8e8e [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:814:22 [INFO] [stdout] 24: 0x5c551e723877 - wgsl_to_wgpu::test::shader_stage_collection::{{closure}}::h75c0538708b93667 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:1293:33 [INFO] [stdout] 25: 0x5c551e7307c6 - core::ops::function::FnOnce::call_once::h1b1bf9d04a93d7b2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- test::write_compute_module_multiple_entries stdout ---- [INFO] [stdout] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Snapshot Summary ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [INFO] [stdout] Snapshot file: src/snapshots/write_compute_module_multiple_entries.snap [INFO] [stdout] Snapshot: write_compute_module_multiple_entries [INFO] [stdout] Source: src/lib.rs:1150 [INFO] [stdout] ──────────────────────────────────────────────────────────────────────────────── [INFO] [stdout] -old snapshot [INFO] [stdout] +new results [INFO] [stdout] ────────────┬─────────────────────────────────────────────────────────────────── [INFO] [stdout] 1 │-pub mod compute { [INFO] [stdout] 2 │- pub const MAIN1_WORKGROUP_SIZE: [u32; 3] = [1, 2, 3]; [INFO] [stdout] 3 │- pub fn create_main1_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 main1"), [INFO] [stdout] 8 │- layout: Some(&layout), [INFO] [stdout] 9 │- module: &module, [INFO] [stdout] 10 │- entry_point: Some("main1"), [INFO] [stdout] 11 │- compilation_options: Default::default(), [INFO] [stdout] 12 │- cache: Default::default(), [INFO] [stdout] 13 │- }) [INFO] [stdout] 14 │- } [INFO] [stdout] 15 │- pub const MAIN2_WORKGROUP_SIZE: [u32; 3] = [256, 1, 1]; [INFO] [stdout] 16 │- pub fn create_main2_pipeline(device: &wgpu::Device) -> wgpu::ComputePipeline { [INFO] [stdout] 17 │- let module = super::create_shader_module(device); [INFO] [stdout] 18 │- let layout = super::create_pipeline_layout(device); [INFO] [stdout] 19 │- device.create_compute_pipeline(&wgpu::ComputePipelineDescriptor { [INFO] [stdout] 20 │- label: Some("Compute Pipeline main2"), [INFO] [stdout] 21 │- layout: Some(&layout), [INFO] [stdout] 22 │- module: &module, [INFO] [stdout] 23 │- entry_point: Some("main2"), [INFO] [stdout] 24 │- compilation_options: Default::default(), [INFO] [stdout] 25 │- cache: Default::default(), [INFO] [stdout] 26 │- }) [INFO] [stdout] 27 │- } [INFO] [stdout] 28 │-} [INFO] [stdout] 1 │+pub mod compute { pub const MAIN1_WORKGROUP_SIZE : [u32 ; 3] = [1 , 2 , 3] ; pub fn create_main1_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 main1") , layout : Some (& layout) , module : & module , entry_point : Some ("main1") , compilation_options : Default :: default () , cache : Default :: default () , }) } pub const MAIN2_WORKGROUP_SIZE : [u32 ; 3] = [256 , 1 , 1] ; pub fn create_main2_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 main2") , layout : Some (& layout) , module : & module , entry_point : Some ("main2") , compilation_options : Default :: default () , cache : Default :: default () , }) } } [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'test::write_compute_module_multiple_entries' (5157) panicked at src/lib.rs:1150: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_compute_module_multiple_entries.snap.new") [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e7284bd - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e7284bd - wgsl_to_wgpu::test::write_compute_module_multiple_entries::{{closure}}::hfe3afa4927f0d753 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:802:17 [INFO] [stdout] 22: 0x5c551e6f8ef4 - insta::settings::Settings::bind::h3797fe7e861b82f1 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e727fb4 - wgsl_to_wgpu::test::write_compute_module_multiple_entries::h7bb1563f1f68223f [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:801:22 [INFO] [stdout] 24: 0x5c551e728077 - wgsl_to_wgpu::test::write_compute_module_multiple_entries::{{closure}}::h1330ee74a1c57216 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:1135:47 [INFO] [stdout] 25: 0x5c551e730cd6 - core::ops::function::FnOnce::call_once::h890eff995cb87f59 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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:1289 [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 { [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, [INFO] [stdout] 13 │-) -> wgpu::VertexState<'a> { [INFO] [stdout] 14 │- wgpu::VertexState { [INFO] [stdout] 15 │- module, [INFO] [stdout] 16 │- entry_point: Some(entry.entry_point), [INFO] [stdout] 17 │- buffers: &entry.buffers, [INFO] [stdout] 18 │- compilation_options: wgpu::PipelineCompilationOptions { [INFO] [stdout] 19 │- constants: &entry.constants, [INFO] [stdout] 20 │- ..Default::default() [INFO] [stdout] 21 │- }, [INFO] [stdout] 22 │- } [INFO] [stdout] 23 │-} [INFO] [stdout] 24 │-pub fn vs_main_none_entry() -> VertexEntry<0> { [INFO] [stdout] 25 │- VertexEntry { [INFO] [stdout] 26 │- entry_point: ENTRY_VS_MAIN_NONE, [INFO] [stdout] 27 │- buffers: [], [INFO] [stdout] 28 │- constants: Default::default(), [INFO] [stdout] 29 │- } [INFO] [stdout] 30 │-} [INFO] [stdout] 31 │-pub fn vs_main_single_entry(input0: wgpu::VertexStepMode) -> VertexEntry<1> { [INFO] [stdout] 32 │- VertexEntry { [INFO] [stdout] 33 │- entry_point: ENTRY_VS_MAIN_SINGLE, [INFO] [stdout] 34 │- buffers: [Input0::vertex_buffer_layout(input0)], [INFO] [stdout] 35 │- constants: Default::default(), [INFO] [stdout] 36 │- } [INFO] [stdout] 37 │-} [INFO] [stdout] 38 │-pub fn vs_main_multiple_entry( [INFO] [stdout] 39 │- input0: wgpu::VertexStepMode, [INFO] [stdout] 40 │- input1: wgpu::VertexStepMode, [INFO] [stdout] 41 │-) -> VertexEntry<2> { [INFO] [stdout] 42 │- VertexEntry { [INFO] [stdout] 43 │- entry_point: ENTRY_VS_MAIN_MULTIPLE, [INFO] [stdout] 44 │- buffers: [ [INFO] [stdout] 45 │- Input0::vertex_buffer_layout(input0), [INFO] [stdout] 46 │- Input1::vertex_buffer_layout(input1), [INFO] [stdout] 47 │- ], [INFO] [stdout] 48 │- constants: Default::default(), [INFO] [stdout] 49 │- } [INFO] [stdout] 50 │-} [INFO] [stdout] 51 │-pub const SOURCE: &str = include_str!("shader.wgsl"); [INFO] [stdout] 52 │-pub fn create_shader_module(device: &wgpu::Device) -> wgpu::ShaderModule { [INFO] [stdout] 53 │- let source = std::borrow::Cow::Borrowed(SOURCE); [INFO] [stdout] 54 │- device.create_shader_module(wgpu::ShaderModuleDescriptor { [INFO] [stdout] 55 │- label: None, [INFO] [stdout] 56 │- source: wgpu::ShaderSource::Wgsl(source), [INFO] [stdout] 57 │- }) [INFO] [stdout] 58 │-} [INFO] [stdout] 59 │-pub fn create_pipeline_layout(device: &wgpu::Device) -> wgpu::PipelineLayout { [INFO] [stdout] 60 │- device.create_pipeline_layout(&wgpu::PipelineLayoutDescriptor { [INFO] [stdout] 61 │- label: None, [INFO] [stdout] 62 │- bind_group_layouts: &[], [INFO] [stdout] 63 │- push_constant_ranges: &[], [INFO] [stdout] 64 │- }) [INFO] [stdout] 65 │-} [INFO] [stdout] 66 │-#[repr(C)] [INFO] [stdout] 67 │-#[derive(Debug, Copy, Clone, PartialEq)] [INFO] [stdout] 68 │-pub struct Input0 { [INFO] [stdout] 69 │- pub in0: [f32; 4], [INFO] [stdout] 70 │- pub in1: [f32; 4], [INFO] [stdout] 71 │- pub in2: [f32; 4], [INFO] [stdout] 72 │-} [INFO] [stdout] 73 │-impl Input0 { [INFO] [stdout] 74 │- pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 3] = [ [INFO] [stdout] 75 │- wgpu::VertexAttribute { [INFO] [stdout] 76 │- format: wgpu::VertexFormat::Float32x4, [INFO] [stdout] 77 │- offset: std::mem::offset_of!(Input0, in0) as u64, [INFO] [stdout] 78 │- shader_location: 0, [INFO] [stdout] 79 │- }, [INFO] [stdout] 80 │- wgpu::VertexAttribute { [INFO] [stdout] 81 │- format: wgpu::VertexFormat::Float32x4, [INFO] [stdout] 82 │- offset: std::mem::offset_of!(Input0, in1) as u64, [INFO] [stdout] 83 │- shader_location: 1, [INFO] [stdout] 84 │- }, [INFO] [stdout] 85 │- wgpu::VertexAttribute { [INFO] [stdout] 86 │- format: wgpu::VertexFormat::Float32x4, [INFO] [stdout] 87 │- offset: std::mem::offset_of!(Input0, in2) as u64, [INFO] [stdout] 88 │- shader_location: 2, [INFO] [stdout] 89 │- }, [INFO] [stdout] 90 │- ]; [INFO] [stdout] 91 │- pub const fn vertex_buffer_layout( [INFO] [stdout] 92 │- step_mode: wgpu::VertexStepMode, [INFO] [stdout] 93 │- ) -> wgpu::VertexBufferLayout<'static> { [INFO] [stdout] 94 │- wgpu::VertexBufferLayout { [INFO] [stdout] 95 │- array_stride: std::mem::size_of::() 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::() as u64, [INFO] [stdout] 137 │- step_mode, [INFO] [stdout] 138 │- attributes: &Input1::VERTEX_ATTRIBUTES, [INFO] [stdout] 139 │- } [INFO] [stdout] 140 │- } [INFO] [stdout] 141 │-} [INFO] [stdout] 1 │+pub const ENTRY_VS_MAIN_NONE : & str = "vs_main_none" ; pub const ENTRY_VS_MAIN_SINGLE : & str = "vs_main_single" ; pub const ENTRY_VS_MAIN_MULTIPLE : & str = "vs_main_multiple" ; # [derive (Debug)] pub struct VertexEntry < const N : usize > { pub entry_point : & 'static str , pub buffers : [wgpu :: VertexBufferLayout < 'static > ; N] , pub constants : Vec < (& 'static str , f64) > , } pub fn vertex_state < 'a , const N : usize > (module : & 'a wgpu :: ShaderModule , entry : & 'a VertexEntry < N > ,) -> wgpu :: VertexState < 'a > { wgpu :: VertexState { module , entry_point : Some (entry . entry_point) , buffers : & entry . buffers , compilation_options : wgpu :: PipelineCompilationOptions { constants : & entry . constants , .. Default :: default () } , } } pub fn vs_main_none_entry () -> VertexEntry < 0 > { VertexEntry { entry_point : ENTRY_VS_MAIN_NONE , buffers : [] , constants : Default :: default () } } pub fn vs_main_single_entry (input0 : wgpu :: VertexStepMode ,) -> VertexEntry < 1 > { VertexEntry { entry_point : ENTRY_VS_MAIN_SINGLE , buffers : [Input0 :: vertex_buffer_layout (input0)] , constants : Default :: default () } } pub fn vs_main_multiple_entry (input0 : wgpu :: VertexStepMode , input1 : wgpu :: VertexStepMode ,) -> VertexEntry < 2 > { VertexEntry { entry_point : ENTRY_VS_MAIN_MULTIPLE , buffers : [Input0 :: vertex_buffer_layout (input0) , Input1 :: vertex_buffer_layout (input1)] , constants : Default :: default () } } pub const SOURCE : & str = include_str ! ("shader.wgsl") ; pub fn create_shader_module (device : & wgpu :: Device) -> wgpu :: ShaderModule { let source = std :: borrow :: Cow :: Borrowed (SOURCE) ; device . create_shader_module (wgpu :: ShaderModuleDescriptor { label : None , source : wgpu :: ShaderSource :: Wgsl (source) }) } pub fn create_pipeline_layout (device : & wgpu :: Device) -> wgpu :: PipelineLayout { device . create_pipeline_layout (& wgpu :: PipelineLayoutDescriptor { label : None , bind_group_layouts : & [] , push_constant_ranges : & [] , }) } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Input0 { pub in0 : [f32 ; 4] , pub in1 : [f32 ; 4] , pub in2 : [f32 ; 4] } impl Input0 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 3] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input0 , in0) as u64 , shader_location : 0 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input0 , in1) as u64 , shader_location : 1 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input0 , in2) as u64 , shader_location : 2 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < Input0 > () as u64 , step_mode , attributes : & Input0 :: VERTEX_ATTRIBUTES } } } # [repr (C)] # [derive (Debug , Copy , Clone , PartialEq)] pub struct Input1 { pub in3 : [f32 ; 4] , pub in4 : [f32 ; 4] , pub in5 : [f32 ; 4] , pub in6 : [u32 ; 4] } impl Input1 { pub const VERTEX_ATTRIBUTES : [wgpu :: VertexAttribute ; 4] = [wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input1 , in3) as u64 , shader_location : 3 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input1 , in4) as u64 , shader_location : 4 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Float32x4 , offset : std :: mem :: offset_of ! (Input1 , in5) as u64 , shader_location : 5 , } , wgpu :: VertexAttribute { format : wgpu :: VertexFormat :: Uint32x4 , offset : std :: mem :: offset_of ! (Input1 , in6) as u64 , shader_location : 6 , }] ; pub const fn vertex_buffer_layout (step_mode : wgpu :: VertexStepMode) -> wgpu :: VertexBufferLayout < 'static > { wgpu :: VertexBufferLayout { array_stride : std :: mem :: size_of :: < Input1 > () as u64 , step_mode , attributes : & Input1 :: VERTEX_ATTRIBUTES } } } [INFO] [stdout] ────────────┴─────────────────────────────────────────────────────────────────── [INFO] [stdout] [INFO] [stdout] thread 'test::vertex_entries' (5035) panicked at src/lib.rs:1289: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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e721fa9 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e721fa9 - wgsl_to_wgpu::test::vertex_entries::{{closure}}::h98142d0fda095ca4 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:815:17 [INFO] [stdout] 22: 0x5c551e6f987f - insta::settings::Settings::bind::hcd4a3681850cd9bf [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e721b10 - wgsl_to_wgpu::test::vertex_entries::h720d3ede82f7c1a1 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:814:22 [INFO] [stdout] 24: 0x5c551e721bb7 - wgsl_to_wgpu::test::vertex_entries::{{closure}}::h8a41cc528a1c5271 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:1277:24 [INFO] [stdout] 25: 0x5c551e730f86 - core::ops::function::FnOnce::call_once::had9269587d469811 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stderr] error: test failed, to rerun pass `--lib` [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- structs::tests::write_runtime_sized_array stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'structs::tests::write_runtime_sized_array' (761) panicked at src/structs.rs:562:9: [INFO] [stdout] assertion failed: `(left == right)` [INFO] [stdout] [INFO] [stdout] Diff < left / right > : [INFO] [stdout] <# [derive (Debug , Clone , PartialEq , encase :: ShaderType)] pub struct RtsStruct { pub other_data : i32 , # [size (runtime)] pub the_array : Vec < u32 > , } [INFO] [stdout] ># [derive (Debug , Clone , PartialEq , encase :: ShaderType)] pub struct RtsStruct { pub other_data : i32 , # [size (runtime)] pub the_array : Vec < u32 > } [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551e6e4a7e - wgsl_to_wgpu::structs::tests::write_runtime_sized_array::hedecab65b2fccb67 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:787:13 [INFO] [stdout] 20: 0x5c551e6e4b07 - wgsl_to_wgpu::structs::tests::write_runtime_sized_array::{{closure}}::hc1c291c2428fc422 [INFO] [stdout] at /opt/rustwide/workdir/src/structs.rs:542:35 [INFO] [stdout] 21: 0x5c551e7312e6 - core::ops::function::FnOnce::call_once::heb6a06348ae87003 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 22: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 24: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 25: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 26: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 27: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 28: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 29: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 30: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 31: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 32: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 33: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 34: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 35: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 36: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 37: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 38: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 39: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 40: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 41: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 42: 0x7f07d4e3aaa4 - [INFO] [stdout] 43: 0x7f07d4ec7a34 - clone [INFO] [stdout] 44: 0x0 - [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:1036 [INFO] [stdout] ──────────────────────────────────────────────────────────────────────────────── [INFO] [stdout] -old snapshot [INFO] [stdout] +new results [INFO] [stdout] ────────────┬─────────────────────────────────────────────────────────────────── [INFO] [stdout] 1 │-impl VertexInput0 { [INFO] [stdout] 2 │- pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 4] = [ [INFO] [stdout] 3 │- wgpu::VertexAttribute { [INFO] [stdout] 4 │- format: wgpu::VertexFormat::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::() 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' (6815) panicked at src/lib.rs:1036:9: [INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_vertex_module_single_input_float32.snap.new") [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e72aa34 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e72aa34 - wgsl_to_wgpu::test::write_vertex_module_single_input_float32::{{closure}}::h32768ec7bb031f15 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:802:17 [INFO] [stdout] 22: 0x5c551e6f8bb4 - insta::settings::Settings::bind::h0547b79abdf89d40 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e72a546 - wgsl_to_wgpu::test::write_vertex_module_single_input_float32::heeafa993f689407a [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:801:22 [INFO] [stdout] 24: 0x5c551e72ab37 - wgsl_to_wgpu::test::write_vertex_module_single_input_float32::{{closure}}::hb4318333f998af19 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:1020:50 [INFO] [stdout] 25: 0x5c551e7309c6 - core::ops::function::FnOnce::call_once::h4f70a1ef04f9a7a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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:1056 [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::() 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' (7272) panicked at src/lib.rs:1056: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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e72b374 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e72b374 - wgsl_to_wgpu::test::write_vertex_module_single_input_float64::{{closure}}::hf000d0914c9d82c5 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:802:17 [INFO] [stdout] 22: 0x5c551e6f9934 - insta::settings::Settings::bind::hd20d5a035a633dd9 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e72ae56 - wgsl_to_wgpu::test::write_vertex_module_single_input_float64::he081bc8b80f9800b [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:801:22 [INFO] [stdout] 24: 0x5c551e72af17 - wgsl_to_wgpu::test::write_vertex_module_single_input_float64::{{closure}}::h6f972f8703358764 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:1040:50 [INFO] [stdout] 25: 0x5c551e730986 - core::ops::function::FnOnce::call_once::h4d3b55b147d0f641 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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:1098 [INFO] [stdout] ──────────────────────────────────────────────────────────────────────────────── [INFO] [stdout] -old snapshot [INFO] [stdout] +new results [INFO] [stdout] ────────────┬─────────────────────────────────────────────────────────────────── [INFO] [stdout] 1 │-impl VertexInput0 { [INFO] [stdout] 2 │- pub const VERTEX_ATTRIBUTES: [wgpu::VertexAttribute; 4] = [ [INFO] [stdout] 3 │- wgpu::VertexAttribute { [INFO] [stdout] 4 │- format: wgpu::VertexFormat::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::() 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' (9514) panicked at src/lib.rs:1098:9: [INFO] [stdout] called `Result::unwrap()` on an `Err` value: FileIo(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }, "/opt/rustwide/workdir/src/snapshots/write_vertex_module_single_input_sint32.snap.new") [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e728f34 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e728f34 - wgsl_to_wgpu::test::write_vertex_module_single_input_sint32::{{closure}}::h817c199c347ea1f9 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:802:17 [INFO] [stdout] 22: 0x5c551e6f8fb4 - insta::settings::Settings::bind::h3b796a15e5822155 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e728a16 - wgsl_to_wgpu::test::write_vertex_module_single_input_sint32::h4952c573c0717b6e [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:801:22 [INFO] [stdout] 24: 0x5c551e728ad7 - wgsl_to_wgpu::test::write_vertex_module_single_input_sint32::{{closure}}::h12fa2c6dd3cb36af [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:1081:49 [INFO] [stdout] 25: 0x5c551e730ad6 - core::ops::function::FnOnce::call_once::h60748adca61ca04d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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:1118 [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::() 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' (9761) panicked at src/lib.rs:1118: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: 0x5c551ee8f732 - std::backtrace_rs::backtrace::libunwind::trace::h22a6a535a50603c6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5c551ee8f732 - std::backtrace_rs::backtrace::trace_unsynchronized::h2503a4f30dbfbaa2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5c551ee8f732 - std::sys::backtrace::_print_fmt::hec54e31f36456895 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x5c551ee8f732 - ::fmt::hb1988e8b50fa5f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x5c551eea307f - core::fmt::rt::Argument::fmt::h3118a66e1a57a586 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x5c551eea307f - core::fmt::write::hcd056e06a609f600 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x5c551ee5a2a1 - std::io::default_write_fmt::hdabc5d6505cb374b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5c551ee5a2a1 - std::io::Write::write_fmt::h18c82179fdc1f9d2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x5c551ee67022 - std::sys::backtrace::BacktraceLock::print::h69f50ba7cfff8317 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x5c551ee6cb2f - std::panicking::default_hook::{{closure}}::hfa978eb2255ab3ab [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x5c551ee6c9c1 - std::panicking::default_hook::h09da2eaf8f1deadd [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x5c551e8fac8e - as core::ops::function::Fn>::call::h1697e4d80f236ef6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 12: 0x5c551e8fac8e - test::test_main_with_exit_callback::{{closure}}::h8f63929ca9fd483b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5c551ee6d29f - as core::ops::function::Fn>::call::hba67e0dc3e3fc548 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1987:9 [INFO] [stdout] 14: 0x5c551ee6d29f - std::panicking::panic_with_hook::h13c40d280d130fd3 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x5c551ee6d04a - std::panicking::panic_handler::{{closure}}::hd79d22e8a1d3b951 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x5c551ee67159 - std::sys::backtrace::__rust_end_short_backtrace::h83414d1ec69cf3a6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x5c551ee4d77d - __rustc[b78aa6c7b08e5dc4]::rust_begin_unwind [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x5c551eeada80 - core::panicking::panic_fmt::h326b75cf8ee01b13 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panicking.rs:78:14 [INFO] [stdout] 19: 0x5c551eeacb96 - core::result::unwrap_failed::h38baee32fdec5ac8 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1855:5 [INFO] [stdout] 20: 0x5c551e729844 - core::result::Result::unwrap::h223c18c7cbfc903c [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/result.rs:1226:23 [INFO] [stdout] 21: 0x5c551e729844 - wgsl_to_wgpu::test::write_vertex_module_single_input_uint32::{{closure}}::h3bd126d1ab862259 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:802:17 [INFO] [stdout] 22: 0x5c551e6f9074 - insta::settings::Settings::bind::h468fbefb9e0db7fa [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/insta-1.43.2/src/settings.rs:509:9 [INFO] [stdout] 23: 0x5c551e729326 - wgsl_to_wgpu::test::write_vertex_module_single_input_uint32::hff5a09972fb86f7c [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:801:22 [INFO] [stdout] 24: 0x5c551e7293e7 - wgsl_to_wgpu::test::write_vertex_module_single_input_uint32::{{closure}}::h13a31d5ac047dad0 [INFO] [stdout] at /opt/rustwide/workdir/src/lib.rs:1102:49 [INFO] [stdout] 25: 0x5c551e730b96 - core::ops::function::FnOnce::call_once::h794a368d0229af42 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 26: 0x5c551e8faa6b - core::ops::function::FnOnce::call_once::he420dad47d9aac14 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x5c551e8faa6b - test::__rust_begin_short_backtrace::h51976f55c263f7c2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:663:18 [INFO] [stdout] 28: 0x5c551e910695 - test::run_test_in_process::{{closure}}::h6aa4339396d33320 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:74 [INFO] [stdout] 29: 0x5c551e910695 - as core::ops::function::FnOnce<()>>::call_once::h5bd0ba3863a53529 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 30: 0x5c551e910695 - std::panicking::catch_unwind::do_call::h5c710722c40c5839 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 31: 0x5c551e910695 - std::panicking::catch_unwind::hf41b5be070ce0f19 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 32: 0x5c551e910695 - std::panic::catch_unwind::h4559aa103e6f16d6 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 33: 0x5c551e910695 - test::run_test_in_process::he6fd763a772ff213 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:686:27 [INFO] [stdout] 34: 0x5c551e910695 - test::run_test::{{closure}}::he46f5435849feb5b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:607:43 [INFO] [stdout] 35: 0x5c551e8e6ea4 - test::run_test::{{closure}}::h12a66289c31b502a [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/test/src/lib.rs:637:41 [INFO] [stdout] 36: 0x5c551e8e6ea4 - std::sys::backtrace::__rust_begin_short_backtrace::h614a7925ed7b2f5e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 37: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbc654088c5dbff36 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 38: 0x5c551e8ea84a - as core::ops::function::FnOnce<()>>::call_once::h3f631d2ca531b61d [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 39: 0x5c551e8ea84a - std::panicking::catch_unwind::do_call::hd2548748db0aa717 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:590:40 [INFO] [stdout] 40: 0x5c551e8ea84a - std::panicking::catch_unwind::hf7d8620d84df48e2 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panicking.rs:553:19 [INFO] [stdout] 41: 0x5c551e8ea84a - std::panic::catch_unwind::hdde75b8543fcb96b [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/panic.rs:359:14 [INFO] [stdout] 42: 0x5c551e8ea84a - std::thread::Builder::spawn_unchecked_::{{closure}}::h991e7d03b432cf3f [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 43: 0x5c551e8ea84a - core::ops::function::FnOnce::call_once{{vtable.shim}}::hebddb40255441657 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 44: 0x5c551ee620af - as core::ops::function::FnOnce>::call_once::h55e8930dc7db99a5 [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/alloc/src/boxed.rs:1973:9 [INFO] [stdout] 45: 0x5c551ee620af - std::sys::thread::unix::Thread::new::thread_start::he23d038ee4fa004e [INFO] [stdout] at /rustc/2440211fe03bc45c89b6dc1a3df18382ce91e32b/library/std/src/sys/thread/unix.rs:126:17 [INFO] [stdout] 46: 0x7f07d4e3aaa4 - [INFO] [stdout] 47: 0x7f07d4ec7a34 - clone [INFO] [stdout] 48: 0x0 - [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] consts::tests::write_pipeline_overrideable_constants [INFO] [stdout] structs::tests::write_all_structs_bytemuck_f64_vec [INFO] [stdout] structs::tests::write_all_structs_bytemuck_input_layout_validation [INFO] [stdout] structs::tests::write_all_structs_bytemuck_skip_input_layout_validation [INFO] [stdout] structs::tests::write_all_structs_encase_bytemuck [INFO] [stdout] structs::tests::write_all_structs_serde_encase_bytemuck [INFO] [stdout] structs::tests::write_all_structs_skip_stage_outputs [INFO] [stdout] structs::tests::write_runtime_sized_array [INFO] [stdout] test::add_duplicate_module_different_paths [INFO] [stdout] test::add_single_root_module [INFO] [stdout] test::create_shader_modules_source_rustfmt [INFO] [stdout] test::shader_stage_collection [INFO] [stdout] test::single_root_module [INFO] [stdout] test::vertex_entries [INFO] [stdout] test::write_compute_module_multiple_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. 23 passed; 24 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.74s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "41e86639704726fe70667790f805419e7999ece09063eeb0b29a2ef1fbe29135", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "41e86639704726fe70667790f805419e7999ece09063eeb0b29a2ef1fbe29135", kill_on_drop: false }` [INFO] [stdout] 41e86639704726fe70667790f805419e7999ece09063eeb0b29a2ef1fbe29135