wgsl: Do not require a semicolon after a struct
Don't generate them either, which generated a lot of test churn.
Fixed: tint:1380
Change-Id: I0a7cfdd2ef0ffe8e7fda111fbc57997b36b949e0
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/77165
Auto-Submit: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
diff --git a/docs/origin-trial-changes.md b/docs/origin-trial-changes.md
index cf4e668..a4acf8c 100644
--- a/docs/origin-trial-changes.md
+++ b/docs/origin-trial-changes.md
@@ -19,6 +19,7 @@
* Added builtins `degrees()` and `radians()` for converting between degrees and radians. [tint:1329](https://crbug.com/tint/1329)
* `let` arrays and matrices can now be dynamically indexed. [tint:1352](https://crbug.com/tint/1352)
* Storage and Uniform buffer types no longer have to be structures. [tint:1372](crbug.com/tint/1372)
+* A struct declaration does not have to be followed by a semicolon. [tint:1380](crbug.com/tint/1380)
### Fixes
diff --git a/src/reader/spirv/function_memory_test.cc b/src/reader/spirv/function_memory_test.cc
index f8c8c98..189fdbe 100644
--- a/src/reader/spirv/function_memory_test.cc
+++ b/src/reader/spirv/function_memory_test.cc
@@ -955,7 +955,7 @@
struct S {
field0 : u32;
field1 : RTArr;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> myvar : S;
)"));
diff --git a/src/reader/spirv/parser_impl_function_decl_test.cc b/src/reader/spirv/parser_impl_function_decl_test.cc
index 47563d1..b3eecc1 100644
--- a/src/reader/spirv/parser_impl_function_decl_test.cc
+++ b/src/reader/spirv/parser_impl_function_decl_test.cc
@@ -126,7 +126,7 @@
struct main_out {
[[builtin(position)]]
x_2_1 : vec4<f32>;
-};
+}
)")) << program_ast;
EXPECT_THAT(program_ast, HasSubstr(R"(
diff --git a/src/reader/spirv/parser_impl_module_var_test.cc b/src/reader/spirv/parser_impl_module_var_test.cc
index 5d93620..4c7ab3a 100644
--- a/src/reader/spirv/parser_impl_module_var_test.cc
+++ b/src/reader/spirv/parser_impl_module_var_test.cc
@@ -473,7 +473,7 @@
struct main_out {
[[builtin(position)]]
gl_Position : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
@@ -533,7 +533,7 @@
struct main_out {
[[builtin(position)]]
gl_Position : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
@@ -592,7 +592,7 @@
struct main_out {
[[builtin(position)]]
gl_Position : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
@@ -651,7 +651,7 @@
struct main_out {
[[builtin(position)]]
x_2_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
@@ -709,7 +709,7 @@
struct main_out {
[[builtin(position)]]
x_2_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
@@ -767,7 +767,7 @@
struct main_out {
[[builtin(position)]]
x_2_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
@@ -803,7 +803,7 @@
struct main_out {
[[builtin(position)]]
x_2_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
@@ -1405,7 +1405,7 @@
field0 : u32;
field1 : f32;
field2 : Arr;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> x_1 : S;
)")) << module_str;
@@ -1435,7 +1435,7 @@
const auto module_str = test::ToString(p->program());
EXPECT_THAT(module_str, HasSubstr(R"(struct S {
field0 : mat3x2<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> myvar : S;
)")) << module_str;
@@ -1464,7 +1464,7 @@
const auto module_str = test::ToString(p->program());
EXPECT_THAT(module_str, HasSubstr(R"(struct S {
field0 : mat3x2<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> myvar : S;
)")) << module_str;
@@ -1494,7 +1494,7 @@
EXPECT_THAT(module_str, HasSubstr(R"(struct S {
[[stride(64), internal(disable_validation__ignore_stride)]]
field0 : mat3x2<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> myvar : S;
)")) << module_str;
@@ -1547,7 +1547,7 @@
EXPECT_THAT(module_str, HasSubstr(R"(struct S {
field0 : f32;
field1 : f32;
-};
+}
[[group(0), binding(0)]] var<storage, read> x_1 : S;
)")) << module_str;
@@ -1576,7 +1576,7 @@
EXPECT_THAT(module_str, HasSubstr(R"(struct S {
field0 : f32;
field1 : f32;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> x_1 : S;
)")) << module_str;
@@ -1608,7 +1608,7 @@
EXPECT_THAT(module_str, HasSubstr(R"(struct S {
field0 : f32;
field1 : f32;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> x_1 : S;
)")) << module_str;
@@ -2364,7 +2364,7 @@
struct main_out {
[[builtin(sample_mask)]]
x_1_1 : u32;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
@@ -2401,7 +2401,7 @@
struct main_out {
[[builtin(sample_mask)]]
x_1_1 : u32;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
@@ -2438,7 +2438,7 @@
struct main_out {
[[builtin(sample_mask)]]
x_1_1 : u32;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
@@ -2474,7 +2474,7 @@
struct main_out {
[[builtin(sample_mask)]]
x_1_1 : u32;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
@@ -2511,7 +2511,7 @@
struct main_out {
[[builtin(sample_mask)]]
x_1_1 : u32;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
@@ -2548,7 +2548,7 @@
struct main_out {
[[builtin(sample_mask)]]
x_1_1 : u32;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
@@ -2631,7 +2631,7 @@
struct main_out {
[[builtin(sample_mask)]]
x_1_1 : u32;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
@@ -2689,7 +2689,7 @@
struct main_out {
[[builtin(position)]]
x_4_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(vertex_index)]] x_1_param : u32) -> main_out {
@@ -2727,7 +2727,7 @@
struct main_out {
[[builtin(position)]]
x_4_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(vertex_index)]] x_1_param : u32) -> main_out {
@@ -2764,7 +2764,7 @@
struct main_out {
[[builtin(position)]]
x_4_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(vertex_index)]] x_1_param : u32) -> main_out {
@@ -2800,7 +2800,7 @@
struct main_out {
[[builtin(position)]]
x_4_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(vertex_index)]] x_1_param : u32) -> main_out {
@@ -2838,7 +2838,7 @@
struct main_out {
[[builtin(position)]]
x_4_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(vertex_index)]] x_1_param : u32) -> main_out {
@@ -2875,7 +2875,7 @@
struct main_out {
[[builtin(position)]]
x_4_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(vertex_index)]] x_1_param : u32) -> main_out {
@@ -2960,7 +2960,7 @@
struct main_out {
[[builtin(position)]]
position_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(instance_index)]] x_1_param : u32) -> main_out {
@@ -2998,7 +2998,7 @@
struct main_out {
[[builtin(position)]]
position_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(instance_index)]] x_1_param : u32) -> main_out {
@@ -3035,7 +3035,7 @@
struct main_out {
[[builtin(position)]]
position_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(instance_index)]] x_1_param : u32) -> main_out {
@@ -3095,7 +3095,7 @@
struct main_out {
[[builtin(position)]]
position_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(instance_index)]] x_1_param : u32) -> main_out {
@@ -3133,7 +3133,7 @@
struct main_out {
[[builtin(position)]]
position_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(instance_index)]] x_1_param : u32) -> main_out {
@@ -3170,7 +3170,7 @@
struct main_out {
[[builtin(position)]]
position_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(instance_index)]] x_1_param : u32) -> main_out {
@@ -3734,7 +3734,7 @@
x_2_1 : u32;
[[location(6)]]
x_4_1 : u32;
-};
+}
[[stage(fragment)]]
fn main([[location(0)]] x_1_param : u32, [[location(30)]] x_3_param : u32) -> main_out {
@@ -3786,7 +3786,7 @@
struct main_out {
[[builtin(position)]]
x_4_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(instance_index)]] x_1_param : u32) -> main_out {
@@ -3836,7 +3836,7 @@
struct main_out {
[[builtin(position)]]
x_4_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(instance_index)]] x_1_param : u32) -> main_out {
@@ -3962,7 +3962,7 @@
struct main_out {
[[builtin(sample_mask)]]
x_1_1 : u32;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
@@ -4008,7 +4008,7 @@
struct main_out {
[[builtin(sample_mask)]]
x_1_1 : u32;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
@@ -4052,7 +4052,7 @@
struct main_out {
[[builtin(frag_depth)]]
x_1_1 : f32;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
@@ -4086,7 +4086,7 @@
struct main_out {
[[builtin(position)]]
gl_Position : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
@@ -4156,7 +4156,7 @@
struct main_out {
[[builtin(position)]]
gl_Position : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
@@ -4213,7 +4213,7 @@
struct main_out {
[[builtin(position)]]
x_2_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[location(4)]] x_1_param : f32, [[location(5)]] x_1_param_1 : f32, [[location(6)]] x_1_param_2 : f32) -> main_out {
@@ -4271,7 +4271,7 @@
struct main_out {
[[builtin(position)]]
x_2_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[location(9)]] x_1_param : vec4<f32>, [[location(10)]] x_1_param_1 : vec4<f32>) -> main_out {
@@ -4325,7 +4325,7 @@
const std::string expected = R"(struct Communicators {
alice : f32;
bob : vec4<f32>;
-};
+}
var<private> x_1 : Communicators;
@@ -4338,7 +4338,7 @@
struct main_out {
[[builtin(position)]]
x_2_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[location(9)]] x_1_param : f32, [[location(10)]] x_1_param_1 : vec4<f32>) -> main_out {
@@ -4397,7 +4397,7 @@
struct main_out {
[[builtin(position)]]
x_2_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[location(7)]] x_1_param : vec4<f32>, [[location(8)]] x_1_param_1 : vec4<f32>, [[location(9)]] x_1_param_2 : vec4<f32>, [[location(10)]] x_1_param_3 : vec4<f32>) -> main_out {
@@ -4464,7 +4464,7 @@
x_1_3 : f32;
[[builtin(position)]]
x_2_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
@@ -4523,7 +4523,7 @@
x_1_2 : vec4<f32>;
[[builtin(position)]]
x_2_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
@@ -4575,7 +4575,7 @@
const std::string expected = R"(struct Communicators {
alice : f32;
bob : vec4<f32>;
-};
+}
var<private> x_1 : Communicators;
@@ -4592,7 +4592,7 @@
x_1_2 : vec4<f32>;
[[builtin(position)]]
x_2_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
@@ -4648,7 +4648,7 @@
const std::string expected = R"(struct Communicators {
alice : f32;
bob : vec4<f32>;
-};
+}
var<private> x_1 : Communicators;
@@ -4667,7 +4667,7 @@
x_3_1 : f32;
[[location(11)]]
x_3_2 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[location(9)]] x_1_param : f32, [[location(11)]] x_1_param_1 : vec4<f32>) -> main_out {
@@ -4748,7 +4748,7 @@
struct main_out {
[[builtin(position)]]
x_10_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[location(1), interpolate(flat)]] x_1_param : u32, [[location(2), interpolate(flat)]] x_2_param : vec2<u32>, [[location(3), interpolate(flat)]] x_3_param : i32, [[location(4), interpolate(flat)]] x_4_param : vec2<i32>, [[location(5), interpolate(flat)]] x_5_param : f32, [[location(6), interpolate(flat)]] x_6_param : vec2<f32>) -> main_out {
@@ -4845,7 +4845,7 @@
x_6_1 : vec2<f32>;
[[builtin(position)]]
x_10_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
@@ -4889,7 +4889,7 @@
R"(struct S {
field0 : f32;
field1 : f32;
-};
+}
var<private> x_1 : array<f32, 2u>;
@@ -5035,7 +5035,7 @@
field3 : f32;
field4 : f32;
field5 : f32;
-};
+}
var<private> x_1 : S;
@@ -5134,7 +5134,7 @@
x_5_1 : f32;
[[location(6), interpolate(linear, sample)]]
x_6_1 : f32;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
@@ -5192,7 +5192,7 @@
field3 : f32;
field4 : f32;
field5 : f32;
-};
+}
var<private> x_1 : S;
@@ -5213,7 +5213,7 @@
x_1_5 : f32;
[[location(6), interpolate(linear, sample)]]
x_1_6 : f32;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
diff --git a/src/reader/spirv/parser_impl_named_types_test.cc b/src/reader/spirv/parser_impl_named_types_test.cc
index c9a951c..f593222 100644
--- a/src/reader/spirv/parser_impl_named_types_test.cc
+++ b/src/reader/spirv/parser_impl_named_types_test.cc
@@ -56,7 +56,7 @@
EXPECT_THAT(test::ToString(p->program()), HasSubstr(R"(struct S {
field0 : u32;
field1 : u32;
-};
+}
struct S_1 {
field0 : u32;
diff --git a/src/reader/wgsl/parser_impl.cc b/src/reader/wgsl/parser_impl.cc
index 719e1b9..cdc9b87 100644
--- a/src/reader/wgsl/parser_impl.cc
+++ b/src/reader/wgsl/parser_impl.cc
@@ -349,7 +349,7 @@
// | global_variable_decl SEMICLON
// | global_constant_decl SEMICOLON
// | type_alias SEMICOLON
-// | struct_decl SEMICOLON
+// | struct_decl
// | function_decl
Expect<bool> ParserImpl::expect_global_decl() {
if (match(Token::Type::kSemicolon) || match(Token::Type::kEOF))
@@ -404,9 +404,6 @@
return Failure::kErrored;
if (str.matched) {
- if (!expect("struct declaration", Token::Type::kSemicolon))
- return Failure::kErrored;
-
builder_.AST().AddTypeDecl(str.value);
return true;
}
diff --git a/src/reader/wgsl/parser_impl_error_msg_test.cc b/src/reader/wgsl/parser_impl_error_msg_test.cc
index 6d1ff74..29f5a7e 100644
--- a/src/reader/wgsl/parser_impl_error_msg_test.cc
+++ b/src/reader/wgsl/parser_impl_error_msg_test.cc
@@ -636,13 +636,6 @@
" ^\n");
}
-TEST_F(ParserImplErrorTest, GlobalDeclStructDeclMissingSemicolon) {
- EXPECT("struct S {}",
- "test.wgsl:1:12 error: expected ';' for struct declaration\n"
- "struct S {}\n"
- " ^\n");
-}
-
TEST_F(ParserImplErrorTest, GlobalDeclStructDeclMissingLBrace) {
EXPECT("struct S };",
"test.wgsl:1:10 error: expected '{' for struct declaration\n"
diff --git a/src/reader/wgsl/parser_impl_global_decl_test.cc b/src/reader/wgsl/parser_impl_global_decl_test.cc
index 175947c..d880e4a 100644
--- a/src/reader/wgsl/parser_impl_global_decl_test.cc
+++ b/src/reader/wgsl/parser_impl_global_decl_test.cc
@@ -93,7 +93,7 @@
TEST_F(ParserImplTest, GlobalDecl_TypeAlias_StructIdent) {
auto p = parser(R"(struct A {
a : f32;
-};
+}
type B = A;)");
p->expect_global_decl();
p->expect_global_decl();
@@ -150,7 +150,7 @@
}
TEST_F(ParserImplTest, GlobalDecl_ParsesStruct) {
- auto p = parser("struct A { b: i32; c: f32;};");
+ auto p = parser("struct A { b: i32; c: f32;}");
p->expect_global_decl();
ASSERT_FALSE(p->has_error()) << p->error();
@@ -167,7 +167,7 @@
}
TEST_F(ParserImplTest, GlobalDecl_Struct_WithStride) {
- auto p = parser("struct A { data: [[stride(4)]] array<f32>; };");
+ auto p = parser("struct A { data: [[stride(4)]] array<f32>; }");
p->expect_global_decl();
ASSERT_FALSE(p->has_error()) << p->error();
@@ -195,7 +195,7 @@
// TODO(crbug.com/tint/1324): DEPRECATED: Remove when [[block]] is removed.
TEST_F(ParserImplTest, GlobalDecl_Struct_WithDecoration) {
- auto p = parser("[[block]] struct A { data: f32; };");
+ auto p = parser("[[block]] struct A { data: f32; }");
p->expect_global_decl();
ASSERT_FALSE(p->has_error()) << p->error();
@@ -212,19 +212,12 @@
}
TEST_F(ParserImplTest, GlobalDecl_Struct_Invalid) {
- auto p = parser("A {};");
+ auto p = parser("A {}");
p->expect_global_decl();
ASSERT_TRUE(p->has_error());
EXPECT_EQ(p->error(), "1:1: unexpected token");
}
-TEST_F(ParserImplTest, GlobalDecl_StructMissing_Semi) {
- auto p = parser("struct A {}");
- p->expect_global_decl();
- ASSERT_TRUE(p->has_error());
- EXPECT_EQ(p->error(), "1:12: expected ';' for struct declaration");
-}
-
} // namespace
} // namespace wgsl
} // namespace reader
diff --git a/src/reader/wgsl/parser_impl_primary_expression_test.cc b/src/reader/wgsl/parser_impl_primary_expression_test.cc
index 97fc0d1..868e39b 100644
--- a/src/reader/wgsl/parser_impl_primary_expression_test.cc
+++ b/src/reader/wgsl/parser_impl_primary_expression_test.cc
@@ -115,7 +115,7 @@
TEST_F(ParserImplTest, PrimaryExpression_TypeDecl_StructConstructor_Empty) {
auto p = parser(R"(
- struct S { a : i32; b : f32; };
+ struct S { a : i32; b : f32; }
S()
)");
@@ -139,7 +139,7 @@
TEST_F(ParserImplTest, PrimaryExpression_TypeDecl_StructConstructor_NotEmpty) {
auto p = parser(R"(
- struct S { a : i32; b : f32; };
+ struct S { a : i32; b : f32; }
S(1u, 2.0)
)");
diff --git a/src/reader/wgsl/parser_impl_test.cc b/src/reader/wgsl/parser_impl_test.cc
index 155113d..269cc9b 100644
--- a/src/reader/wgsl/parser_impl_test.cc
+++ b/src/reader/wgsl/parser_impl_test.cc
@@ -37,6 +37,27 @@
ASSERT_EQ(1u, program.AST().Functions().size());
}
+TEST_F(ParserImplTest, Parses_ExtraSemicolons) {
+ auto p = parser(R"(
+;
+struct S {
+ a : f32;
+};;
+;
+fn foo() -> S {
+ ;
+ return S();;;
+ ;
+};;
+;
+)");
+ ASSERT_TRUE(p->Parse()) << p->error();
+
+ Program program = p->program();
+ ASSERT_EQ(1u, program.AST().Functions().size());
+ ASSERT_EQ(1u, program.AST().TypeDecls().size());
+}
+
TEST_F(ParserImplTest, HandlesError) {
auto p = parser(R"(
fn main() -> { // missing return type
diff --git a/src/transform/add_spirv_block_decoration_test.cc b/src/transform/add_spirv_block_decoration_test.cc
index 74e4b33..e504c50 100644
--- a/src/transform/add_spirv_block_decoration_test.cc
+++ b/src/transform/add_spirv_block_decoration_test.cc
@@ -38,7 +38,7 @@
auto* src = R"(
struct S {
f : f32;
-};
+}
var<private> p : S;
@@ -59,7 +59,7 @@
struct S {
[[location(0)]]
f : f32;
-};
+}
[[stage(fragment)]]
fn main() -> S {
@@ -87,7 +87,7 @@
[[internal(spirv_block)]]
struct u_block {
inner : f32;
-};
+}
[[group(0), binding(0)]] var<uniform> u : u_block;
@@ -116,7 +116,7 @@
[[internal(spirv_block)]]
struct u_block {
inner : array<vec4<f32>, 4u>;
-};
+}
[[group(0), binding(0)]] var<uniform> u : u_block;
@@ -149,7 +149,7 @@
[[internal(spirv_block)]]
struct u_block {
inner : array<vec4<f32>, 4u>;
-};
+}
[[group(0), binding(0)]] var<uniform> u : u_block;
@@ -182,7 +182,7 @@
[[internal(spirv_block)]]
struct S {
f : f32;
-};
+}
[[group(0), binding(0)]] var<uniform> u : S;
@@ -218,12 +218,12 @@
auto* expect = R"(
struct Inner {
f : f32;
-};
+}
[[internal(spirv_block)]]
struct Outer {
i : Inner;
-};
+}
[[group(0), binding(0)]] var<uniform> u : Outer;
@@ -263,19 +263,19 @@
auto* expect = R"(
struct Inner {
f : f32;
-};
+}
[[internal(spirv_block)]]
struct Outer {
i : Inner;
-};
+}
[[group(0), binding(0)]] var<uniform> u0 : Outer;
[[internal(spirv_block)]]
struct u1_block {
inner : Inner;
-};
+}
[[group(0), binding(1)]] var<uniform> u1 : u1_block;
@@ -315,18 +315,18 @@
auto* expect = R"(
struct Inner {
f : f32;
-};
+}
struct Outer {
i : Inner;
-};
+}
var<private> p : Outer;
[[internal(spirv_block)]]
struct u_block {
inner : Inner;
-};
+}
[[group(0), binding(1)]] var<uniform> u : u_block;
@@ -371,19 +371,19 @@
auto* expect = R"(
struct Inner {
f : f32;
-};
+}
[[internal(spirv_block)]]
struct S {
i : Inner;
-};
+}
[[group(0), binding(0)]] var<uniform> u0 : S;
[[internal(spirv_block)]]
struct u1_block {
inner : Inner;
-};
+}
[[group(0), binding(1)]] var<uniform> u1 : u1_block;
@@ -420,12 +420,12 @@
auto* expect = R"(
struct S {
f : f32;
-};
+}
[[internal(spirv_block)]]
struct u_block {
inner : S;
-};
+}
[[group(0), binding(0)]] var<uniform> u : u_block;
@@ -463,12 +463,12 @@
auto* expect = R"(
struct S {
f : f32;
-};
+}
[[internal(spirv_block)]]
struct u0_block {
inner : S;
-};
+}
[[group(0), binding(0)]] var<uniform> u0 : u0_block;
@@ -516,14 +516,14 @@
auto* expect = R"(
struct Inner {
f : f32;
-};
+}
type MyInner = Inner;
[[internal(spirv_block)]]
struct Outer {
i : MyInner;
-};
+}
type MyOuter = Outer;
@@ -532,7 +532,7 @@
[[internal(spirv_block)]]
struct u1_block {
inner : Inner;
-};
+}
[[group(0), binding(1)]] var<uniform> u1 : u1_block;
diff --git a/src/transform/array_length_from_uniform_test.cc b/src/transform/array_length_from_uniform_test.cc
index 77fb0c3..b9139a9 100644
--- a/src/transform/array_length_from_uniform_test.cc
+++ b/src/transform/array_length_from_uniform_test.cc
@@ -63,7 +63,7 @@
auto* expect = R"(
struct tint_symbol {
buffer_size : array<vec4<u32>, 1u>;
-};
+}
[[group(0), binding(30)]] var<uniform> tint_symbol_1 : tint_symbol;
@@ -106,14 +106,14 @@
auto* expect = R"(
struct tint_symbol {
buffer_size : array<vec4<u32>, 1u>;
-};
+}
[[group(0), binding(30)]] var<uniform> tint_symbol_1 : tint_symbol;
struct SB {
x : i32;
arr : array<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> sb : SB;
@@ -149,7 +149,7 @@
auto* expect = R"(
struct tint_symbol {
buffer_size : array<vec4<u32>, 1u>;
-};
+}
[[group(0), binding(30)]] var<uniform> tint_symbol_1 : tint_symbol;
@@ -193,7 +193,7 @@
auto* expect = R"(
struct tint_symbol {
buffer_size : array<vec4<u32>, 1u>;
-};
+}
[[group(0), binding(30)]] var<uniform> tint_symbol_1 : tint_symbol;
@@ -201,7 +201,7 @@
x : i32;
y : f32;
arr : [[stride(64)]] array<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> sb : SB;
@@ -259,24 +259,24 @@
auto* expect = R"(
struct tint_symbol {
buffer_size : array<vec4<u32>, 2u>;
-};
+}
[[group(0), binding(30)]] var<uniform> tint_symbol_1 : tint_symbol;
struct SB1 {
x : i32;
arr1 : array<i32>;
-};
+}
struct SB2 {
x : i32;
arr2 : array<vec4<f32>>;
-};
+}
struct SB4 {
x : i32;
arr4 : array<vec4<f32>>;
-};
+}
[[group(0), binding(2)]] var<storage, read> sb1 : SB1;
@@ -348,24 +348,24 @@
auto* expect = R"(
struct tint_symbol {
buffer_size : array<vec4<u32>, 1u>;
-};
+}
[[group(0), binding(30)]] var<uniform> tint_symbol_1 : tint_symbol;
struct SB1 {
x : i32;
arr1 : array<i32>;
-};
+}
struct SB2 {
x : i32;
arr2 : array<vec4<f32>>;
-};
+}
struct SB4 {
x : i32;
arr4 : array<vec4<f32>>;
-};
+}
[[group(0), binding(2)]] var<storage, read> sb1 : SB1;
@@ -407,7 +407,7 @@
struct SB {
x : i32;
arr : array<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> sb : SB;
@@ -457,19 +457,19 @@
auto* expect = R"(
struct tint_symbol {
buffer_size : array<vec4<u32>, 1u>;
-};
+}
[[group(0), binding(30)]] var<uniform> tint_symbol_1 : tint_symbol;
struct SB1 {
x : i32;
arr1 : array<i32>;
-};
+}
struct SB2 {
x : i32;
arr2 : array<vec4<f32>>;
-};
+}
[[group(0), binding(2)]] var<storage, read> sb1 : SB1;
diff --git a/src/transform/binding_remapper_test.cc b/src/transform/binding_remapper_test.cc
index 87e205a..de85cb0 100644
--- a/src/transform/binding_remapper_test.cc
+++ b/src/transform/binding_remapper_test.cc
@@ -28,7 +28,7 @@
auto* src = R"(
struct S {
a : f32;
-};
+}
[[group(2), binding(1)]] var<storage, read> a : S;
@@ -67,7 +67,7 @@
auto* expect = R"(
struct S {
a : f32;
-};
+}
[[group(1), binding(2)]] var<storage, read> a : S;
@@ -111,7 +111,7 @@
auto* expect = R"(
struct S {
a : f32;
-};
+}
[[group(2), binding(1)]] var<storage, write> a : S;
@@ -215,7 +215,7 @@
auto* expect = R"(
struct S {
a : f32;
-};
+}
[[group(4), binding(5)]] var<storage, write> a : S;
@@ -264,7 +264,7 @@
auto* expect = R"(
struct S {
i : i32;
-};
+}
[[internal(disable_validation__binding_point_collision), group(1), binding(1)]] var<storage, read> a : S;
@@ -321,7 +321,7 @@
auto* expect = R"(
struct S {
i : i32;
-};
+}
[[group(1), binding(1)]] var<storage, read> a : S;
diff --git a/src/transform/calculate_array_length_test.cc b/src/transform/calculate_array_length_test.cc
index 4b42bf9..83e0ac7 100644
--- a/src/transform/calculate_array_length_test.cc
+++ b/src/transform/calculate_array_length_test.cc
@@ -85,7 +85,7 @@
struct SB {
x : i32;
arr : array<i32>;
-};
+}
[[internal(intrinsic_buffer_size)]]
fn tint_symbol([[internal(disable_validation__ignore_constructible_function_parameter)]] buffer : SB, result : ptr<function, u32>)
@@ -161,7 +161,7 @@
struct SB {
x : i32;
arr : array<i32>;
-};
+}
[[internal(intrinsic_buffer_size)]]
fn tint_symbol([[internal(disable_validation__ignore_constructible_function_parameter)]] buffer : SB, result : ptr<function, u32>)
@@ -235,7 +235,7 @@
x : i32;
y : f32;
arr : [[stride(64)]] array<i32>;
-};
+}
[[internal(intrinsic_buffer_size)]]
fn tint_symbol([[internal(disable_validation__ignore_constructible_function_parameter)]] buffer : SB, result : ptr<function, u32>)
@@ -281,7 +281,7 @@
struct SB {
x : i32;
arr : array<i32>;
-};
+}
[[internal(intrinsic_buffer_size)]]
fn tint_symbol([[internal(disable_validation__ignore_constructible_function_parameter)]] buffer : SB, result : ptr<function, u32>)
@@ -345,7 +345,7 @@
struct SB1 {
x : i32;
arr1 : array<i32>;
-};
+}
[[internal(intrinsic_buffer_size)]]
fn tint_symbol([[internal(disable_validation__ignore_constructible_function_parameter)]] buffer : SB1, result : ptr<function, u32>)
@@ -353,7 +353,7 @@
struct SB2 {
x : i32;
arr2 : array<vec4<f32>>;
-};
+}
[[internal(intrinsic_buffer_size)]]
fn tint_symbol_3([[internal(disable_validation__ignore_constructible_function_parameter)]] buffer : SB2, result : ptr<function, u32>)
@@ -412,7 +412,7 @@
struct SB {
x : i32;
arr : array<i32>;
-};
+}
[[internal(intrinsic_buffer_size)]]
fn tint_symbol([[internal(disable_validation__ignore_constructible_function_parameter)]] buffer : SB, result : ptr<function, u32>)
diff --git a/src/transform/canonicalize_entry_point_io_test.cc b/src/transform/canonicalize_entry_point_io_test.cc
index e2daa97..3c16ee5 100644
--- a/src/transform/canonicalize_entry_point_io_test.cc
+++ b/src/transform/canonicalize_entry_point_io_test.cc
@@ -121,7 +121,7 @@
loc1 : f32;
[[location(2)]]
loc2 : vec4<u32>;
-};
+}
fn frag_main_inner(loc1 : f32, loc2 : vec4<u32>, coord : vec4<f32>) {
var col : f32 = (coord.x * loc1);
@@ -159,7 +159,7 @@
loc2 : vec4<u32>;
[[builtin(position)]]
coord : vec4<f32>;
-};
+}
fn frag_main_inner(loc1 : f32, loc2 : vec4<u32>, coord : vec4<f32>) {
var col : f32 = (coord.x * loc1);
@@ -195,7 +195,7 @@
struct tint_symbol_1 {
[[location(1)]]
loc1 : f32;
-};
+}
fn frag_main_inner(loc1 : myf32) {
var x : myf32 = loc1;
@@ -244,12 +244,12 @@
struct FragBuiltins {
coord : vec4<f32>;
-};
+}
struct FragLocations {
loc1 : f32;
loc2 : vec4<u32>;
-};
+}
fn frag_main_inner(loc0 : f32, locations : FragLocations, builtins : FragBuiltins) {
var col : f32 = ((builtins.coord.x * locations.loc1) + loc0);
@@ -290,12 +290,12 @@
auto* expect = R"(
struct FragBuiltins {
coord : vec4<f32>;
-};
+}
struct FragLocations {
loc1 : f32;
loc2 : vec4<u32>;
-};
+}
struct tint_symbol_1 {
[[location(0)]]
@@ -304,7 +304,7 @@
loc1 : f32;
[[location(2)]]
loc2 : vec4<u32>;
-};
+}
fn frag_main_inner(loc0 : f32, locations : FragLocations, builtins : FragBuiltins) {
var col : f32 = ((builtins.coord.x * locations.loc1) + loc0);
@@ -345,12 +345,12 @@
auto* expect = R"(
struct FragBuiltins {
coord : vec4<f32>;
-};
+}
struct FragLocations {
loc1 : f32;
loc2 : vec4<u32>;
-};
+}
struct tint_symbol_1 {
[[location(0)]]
@@ -361,7 +361,7 @@
loc2 : vec4<u32>;
[[builtin(position)]]
coord : vec4<f32>;
-};
+}
fn frag_main_inner(loc0 : f32, locations : FragLocations, builtins : FragBuiltins) {
var col : f32 = ((builtins.coord.x * locations.loc1) + loc0);
@@ -423,7 +423,7 @@
struct tint_symbol {
[[builtin(frag_depth)]]
value : f32;
-};
+}
fn frag_main_inner() -> f32 {
return 1.0;
@@ -458,7 +458,7 @@
struct tint_symbol {
[[builtin(frag_depth)]]
value : f32;
-};
+}
fn frag_main_inner() -> f32 {
return 1.0;
@@ -510,7 +510,7 @@
color : vec4<f32>;
depth : f32;
mask : u32;
-};
+}
fn frag_main_inner() -> FragOutput {
var output : FragOutput;
@@ -560,7 +560,7 @@
color : vec4<f32>;
depth : f32;
mask : u32;
-};
+}
struct tint_symbol {
[[location(0)]]
@@ -569,7 +569,7 @@
depth : f32;
[[builtin(sample_mask)]]
mask : u32;
-};
+}
fn frag_main_inner() -> FragOutput {
var output : FragOutput;
@@ -621,7 +621,7 @@
color : vec4<f32>;
depth : f32;
mask : u32;
-};
+}
struct tint_symbol {
[[location(0)]]
@@ -630,7 +630,7 @@
depth : f32;
[[builtin(sample_mask)]]
mask : u32;
-};
+}
fn frag_main_inner() -> FragOutput {
var output : FragOutput;
@@ -694,7 +694,7 @@
struct FragmentInput {
value : f32;
mul : f32;
-};
+}
fn foo(x : FragmentInput) -> f32 {
return (x.value * x.mul);
@@ -754,7 +754,7 @@
struct FragmentInput {
value : f32;
mul : f32;
-};
+}
fn foo(x : FragmentInput) -> f32 {
return (x.value * x.mul);
@@ -765,7 +765,7 @@
value : f32;
[[location(1)]]
mul : f32;
-};
+}
fn frag_main1_inner(inputs : FragmentInput) {
var x : f32 = foo(inputs);
@@ -781,7 +781,7 @@
value : f32;
[[location(1)]]
mul : f32;
-};
+}
fn frag_main2_inner(inputs : FragmentInput) {
var x : f32 = foo(inputs);
@@ -828,7 +828,7 @@
struct FragmentInput {
value : f32;
mul : f32;
-};
+}
fn foo(x : FragmentInput) -> f32 {
return (x.value * x.mul);
@@ -839,7 +839,7 @@
value : f32;
[[location(1)]]
mul : f32;
-};
+}
fn frag_main1_inner(inputs : FragmentInput) {
var x : f32 = foo(inputs);
@@ -855,7 +855,7 @@
value : f32;
[[location(1)]]
mul : f32;
-};
+}
fn frag_main2_inner(inputs : FragmentInput) {
var x : f32 = foo(inputs);
@@ -904,7 +904,7 @@
struct FragmentInput {
col1 : f32;
col2 : f32;
-};
+}
var<private> global_inputs : FragmentInput;
@@ -921,7 +921,7 @@
col1 : f32;
[[location(1)]]
col2 : f32;
-};
+}
fn frag_main1_inner(inputs : FragmentInput) {
global_inputs = inputs;
@@ -978,12 +978,12 @@
struct FragmentInput {
col1 : myf32;
col2 : myf32;
-};
+}
struct FragmentOutput {
col1 : myf32;
col2 : myf32;
-};
+}
type MyFragmentInput = FragmentInput;
@@ -998,14 +998,14 @@
col1 : f32;
[[location(1)]]
col2 : f32;
-};
+}
struct tint_symbol_2 {
[[location(0)]]
col1 : f32;
[[location(1)]]
col2 : f32;
-};
+}
fn frag_main_inner(inputs : MyFragmentInput) -> MyFragmentOutput {
var x : myf32 = foo(inputs);
@@ -1062,12 +1062,12 @@
loc1 : f32;
loc2 : f32;
loc3 : f32;
-};
+}
struct FragmentIn {
loc1 : f32;
loc2 : f32;
-};
+}
struct tint_symbol {
[[location(1), interpolate(flat)]]
@@ -1078,7 +1078,7 @@
loc3 : f32;
[[builtin(position)]]
pos : vec4<f32>;
-};
+}
fn vert_main_inner() -> VertexOut {
return VertexOut();
@@ -1102,7 +1102,7 @@
loc2 : f32;
[[location(3), interpolate(perspective, centroid)]]
loc3 : f32;
-};
+}
fn frag_main_inner(inputs : FragmentIn, loc3 : f32) {
let x = ((inputs.loc1 + inputs.loc2) + loc3);
@@ -1200,7 +1200,7 @@
u : u32;
vi : vec4<i32>;
vu : vec4<u32>;
-};
+}
struct VertexOut {
i : i32;
@@ -1208,14 +1208,14 @@
vi : vec4<i32>;
vu : vec4<u32>;
pos : vec4<f32>;
-};
+}
struct FragmentInterface {
i : i32;
u : u32;
vi : vec4<i32>;
vu : vec4<u32>;
-};
+}
fn vert_main_inner(in : VertexIn) -> VertexOut {
return VertexOut(in.i, in.u, in.vi, in.vu, vec4<f32>());
@@ -1273,12 +1273,12 @@
auto* expect = R"(
struct VertexOut {
pos : vec4<f32>;
-};
+}
struct tint_symbol {
[[builtin(position), invariant]]
pos : vec4<f32>;
-};
+}
fn main1_inner() -> VertexOut {
return VertexOut();
@@ -1295,7 +1295,7 @@
struct tint_symbol_1 {
[[builtin(position), invariant]]
value : vec4<f32>;
-};
+}
fn main2_inner() -> vec4<f32> {
return vec4<f32>();
@@ -1344,12 +1344,12 @@
coord : vec4<f32>;
[[align(128)]]
loc0 : f32;
-};
+}
struct FragmentOutput {
[[size(16)]]
value : f32;
-};
+}
struct tint_symbol_1 {
[[location(0), interpolate(linear, sample)]]
@@ -1358,12 +1358,12 @@
value : f32;
[[builtin(position)]]
coord : vec4<f32>;
-};
+}
struct tint_symbol_2 {
[[location(1), interpolate(flat)]]
value : f32;
-};
+}
fn frag_main_inner(inputs : FragmentInput) -> FragmentOutput {
return FragmentOutput(((inputs.coord.x * inputs.value) + inputs.loc0));
@@ -1422,13 +1422,13 @@
d : u32;
a : f32;
c : i32;
-};
+}
struct FragmentInputExtra {
d : u32;
pos : vec4<f32>;
a : f32;
-};
+}
struct tint_symbol {
[[location(0)]]
@@ -1441,7 +1441,7 @@
d : u32;
[[builtin(position)]]
pos : vec4<f32>;
-};
+}
fn vert_main_inner() -> VertexOutput {
return VertexOutput();
@@ -1472,7 +1472,7 @@
pos : vec4<f32>;
[[builtin(front_facing)]]
ff : bool;
-};
+}
fn frag_main_inner(ff : bool, c : i32, inputs : FragmentInputExtra, b : u32) {
}
@@ -1502,7 +1502,7 @@
struct tint_symbol_2 {
[[location(0)]]
col : f32;
-};
+}
fn tint_symbol_1_inner(col : f32) {
}
@@ -1532,7 +1532,7 @@
struct tint_symbol {
[[builtin(sample_mask)]]
fixed_sample_mask : u32;
-};
+}
fn frag_main_inner() {
}
@@ -1566,7 +1566,7 @@
struct tint_symbol {
[[builtin(sample_mask)]]
fixed_sample_mask : u32;
-};
+}
fn frag_main_inner() {
return;
@@ -1601,7 +1601,7 @@
struct tint_symbol {
[[builtin(sample_mask)]]
value : u32;
-};
+}
fn frag_main_inner() -> u32 {
return 7u;
@@ -1638,7 +1638,7 @@
value : f32;
[[builtin(sample_mask)]]
fixed_sample_mask : u32;
-};
+}
fn frag_main_inner() -> f32 {
return 1.0;
@@ -1681,7 +1681,7 @@
depth : f32;
mask : u32;
value : f32;
-};
+}
struct tint_symbol {
[[location(0)]]
@@ -1690,7 +1690,7 @@
depth : f32;
[[builtin(sample_mask)]]
mask : u32;
-};
+}
fn frag_main_inner() -> Output {
return Output(0.5, 7u, 1.0);
@@ -1733,7 +1733,7 @@
struct Output {
depth : f32;
value : f32;
-};
+}
struct tint_symbol {
[[location(0)]]
@@ -1742,7 +1742,7 @@
depth : f32;
[[builtin(sample_mask)]]
fixed_sample_mask : u32;
-};
+}
fn frag_main_inner() -> Output {
return Output(0.5, 1.0);
@@ -1793,7 +1793,7 @@
struct tint_symbol {
[[builtin(sample_mask)]]
value : u32;
-};
+}
fn frag_main1_inner() -> u32 {
return 7u;
@@ -1812,7 +1812,7 @@
value : f32;
[[builtin(sample_mask)]]
fixed_sample_mask : u32;
-};
+}
fn frag_main2_inner() -> f32 {
return 1.0;
@@ -1830,7 +1830,7 @@
struct tint_symbol_2 {
[[builtin(position)]]
value : vec4<f32>;
-};
+}
fn vert_main1_inner() -> vec4<f32> {
return vec4<f32>();
@@ -1874,7 +1874,7 @@
struct FragOut {
fixed_sample_mask : vec4<f32>;
fixed_sample_mask_1 : vec4<f32>;
-};
+}
struct tint_symbol {
[[location(0)]]
@@ -1883,7 +1883,7 @@
fixed_sample_mask_1 : vec4<f32>;
[[builtin(sample_mask)]]
fixed_sample_mask_2 : u32;
-};
+}
fn frag_main_inner() -> FragOut {
return FragOut();
@@ -1956,7 +1956,7 @@
value : vec4<f32>;
[[builtin(pointsize)]]
vertex_point_size : f32;
-};
+}
fn vert_main_inner() -> vec4<f32> {
return vec4<f32>();
@@ -1999,7 +1999,7 @@
struct VertOut {
pos : vec4<f32>;
-};
+}
fn vert_main_inner() -> VertOut {
return VertOut();
@@ -2036,14 +2036,14 @@
auto* expect = R"(
struct VertOut {
pos : vec4<f32>;
-};
+}
struct tint_symbol {
[[builtin(position)]]
pos : vec4<f32>;
[[builtin(pointsize)]]
vertex_point_size : f32;
-};
+}
fn vert_main_inner() -> VertOut {
return VertOut();
@@ -2112,16 +2112,16 @@
struct VertIn1 {
collide : f32;
-};
+}
struct VertIn2 {
collide : f32;
-};
+}
struct VertOut {
vertex_point_size : f32;
vertex_point_size_1 : vec4<f32>;
-};
+}
fn vert_main_inner(collide : VertIn1, collide_1 : VertIn2) -> VertOut {
let x = (collide.collide + collide_1.collide);
@@ -2170,23 +2170,23 @@
auto* expect = R"(
struct VertIn1 {
collide : f32;
-};
+}
struct VertIn2 {
collide : f32;
-};
+}
struct VertOut {
vertex_point_size : vec4<f32>;
vertex_point_size_1 : vec4<f32>;
-};
+}
struct tint_symbol_1 {
[[location(0)]]
collide : f32;
[[location(1)]]
collide_2 : f32;
-};
+}
struct tint_symbol_2 {
[[location(0)]]
@@ -2195,7 +2195,7 @@
vertex_point_size_1 : vec4<f32>;
[[builtin(pointsize)]]
vertex_point_size_2 : f32;
-};
+}
fn vert_main_inner(collide : VertIn1, collide_1 : VertIn2) -> VertOut {
let x = (collide.collide + collide_1.collide);
@@ -2246,23 +2246,23 @@
auto* expect = R"(
struct VertIn1 {
collide : f32;
-};
+}
struct VertIn2 {
collide : f32;
-};
+}
struct VertOut {
vertex_point_size : vec4<f32>;
vertex_point_size_1 : vec4<f32>;
-};
+}
struct tint_symbol_1 {
[[location(0)]]
collide : f32;
[[location(1)]]
collide_2 : f32;
-};
+}
struct tint_symbol_2 {
[[location(0)]]
@@ -2271,7 +2271,7 @@
vertex_point_size_1 : vec4<f32>;
[[builtin(pointsize)]]
vertex_point_size_2 : f32;
-};
+}
fn vert_main_inner(collide : VertIn1, collide_1 : VertIn2) -> VertOut {
let x = (collide.collide + collide_1.collide);
diff --git a/src/transform/decompose_memory_access_test.cc b/src/transform/decompose_memory_access_test.cc
index 046d88c..c28f48e 100644
--- a/src/transform/decompose_memory_access_test.cc
+++ b/src/transform/decompose_memory_access_test.cc
@@ -102,7 +102,7 @@
t : mat4x3<f32>;
u : mat4x4<f32>;
v : array<vec3<f32>, 2>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb : SB;
@@ -298,7 +298,7 @@
t : mat4x3<f32>;
u : mat4x4<f32>;
v : array<vec3<f32>, 2>;
-};
+}
[[group(0), binding(0)]] var<uniform> ub : UB;
@@ -494,7 +494,7 @@
t : mat4x3<f32>;
u : mat4x4<f32>;
v : array<vec3<f32>, 2>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb : SB;
@@ -686,7 +686,7 @@
t : mat4x3<f32>;
u : mat4x4<f32>;
v : array<vec3<f32>, 2>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb : SB;
@@ -844,7 +844,7 @@
t : mat4x3<f32>;
u : mat4x4<f32>;
v : array<vec3<f32>, 2>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb : SB;
@@ -1021,19 +1021,19 @@
a : i32;
b : vec3<f32>;
c : i32;
-};
+}
struct S2 {
a : i32;
b : [[stride(32)]] array<S1, 3>;
c : i32;
-};
+}
struct SB {
[[size(128)]]
a : i32;
b : [[stride(256)]] array<S2>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb : SB;
@@ -1087,19 +1087,19 @@
a : i32;
b : vec3<f32>;
c : i32;
-};
+}
struct S2 {
a : i32;
b : [[stride(32)]] array<S1, 3>;
c : i32;
-};
+}
struct SB {
[[size(128)]]
a : i32;
b : [[stride(256)]] array<S2>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb : SB;
@@ -1164,7 +1164,7 @@
a : i32;
b : vec3<f32>;
c : i32;
-};
+}
type A1 = S1;
@@ -1174,7 +1174,7 @@
a : i32;
b : A1_Array;
c : i32;
-};
+}
type A2 = S2;
@@ -1184,7 +1184,7 @@
[[size(128)]]
a : i32;
b : A2_Array;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb : SB;
@@ -1248,7 +1248,7 @@
padding : vec4<f32>;
a : atomic<i32>;
b : atomic<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb : SB;
@@ -1356,7 +1356,7 @@
padding : vec4<f32>;
a : atomic<i32>;
b : atomic<u32>;
-};
+}
var<workgroup> w : S;
diff --git a/src/transform/decompose_strided_matrix_test.cc b/src/transform/decompose_strided_matrix_test.cc
index 41555dc..db31c62 100644
--- a/src/transform/decompose_strided_matrix_test.cc
+++ b/src/transform/decompose_strided_matrix_test.cc
@@ -91,7 +91,7 @@
[[size(16)]]
padding : u32;
m : [[stride(32)]] array<vec2<f32>, 2u>;
-};
+}
[[group(0), binding(0)]] var<uniform> s : S;
@@ -152,7 +152,7 @@
[[size(16)]]
padding : u32;
m : [[stride(32)]] array<vec2<f32>, 2u>;
-};
+}
[[group(0), binding(0)]] var<uniform> s : S;
@@ -210,7 +210,7 @@
padding : u32;
[[stride(8), internal(disable_validation__ignore_stride)]]
m : mat2x2<f32>;
-};
+}
[[group(0), binding(0)]] var<uniform> s : S;
@@ -267,7 +267,7 @@
[[size(8)]]
padding : u32;
m : [[stride(32)]] array<vec2<f32>, 2u>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> s : S;
@@ -328,7 +328,7 @@
[[size(16)]]
padding : u32;
m : [[stride(32)]] array<vec2<f32>, 2u>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> s : S;
@@ -386,7 +386,7 @@
[[size(8)]]
padding : u32;
m : [[stride(32)]] array<vec2<f32>, 2u>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> s : S;
@@ -447,7 +447,7 @@
[[size(8)]]
padding : u32;
m : [[stride(32)]] array<vec2<f32>, 2u>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> s : S;
@@ -519,7 +519,7 @@
[[size(8)]]
padding : u32;
m : [[stride(32)]] array<vec2<f32>, 2u>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> s : S;
@@ -588,7 +588,7 @@
padding : u32;
[[stride(32), internal(disable_validation__ignore_stride)]]
m : mat2x2<f32>;
-};
+}
var<private> s : S;
@@ -646,7 +646,7 @@
padding : u32;
[[stride(32), internal(disable_validation__ignore_stride)]]
m : mat2x2<f32>;
-};
+}
var<private> s : S;
diff --git a/src/transform/first_index_offset_test.cc b/src/transform/first_index_offset_test.cc
index 8d537e0..6368d29 100644
--- a/src/transform/first_index_offset_test.cc
+++ b/src/transform/first_index_offset_test.cc
@@ -61,7 +61,7 @@
auto* expect = R"(
struct tint_symbol {
first_vertex_index : u32;
-};
+}
[[binding(1), group(2)]] var<uniform> tint_symbol_1 : tint_symbol;
@@ -107,7 +107,7 @@
auto* expect = R"(
struct tint_symbol {
first_instance_index : u32;
-};
+}
[[binding(1), group(7)]] var<uniform> tint_symbol_1 : tint_symbol;
@@ -159,7 +159,7 @@
struct tint_symbol {
first_vertex_index : u32;
first_instance_index : u32;
-};
+}
[[binding(1), group(2)]] var<uniform> tint_symbol_1 : tint_symbol;
@@ -172,7 +172,7 @@
instance_idx : u32;
[[builtin(vertex_index)]]
vert_idx : u32;
-};
+}
[[stage(vertex)]]
fn entry(inputs : Inputs) -> [[builtin(position)]] vec4<f32> {
@@ -216,7 +216,7 @@
auto* expect = R"(
struct tint_symbol {
first_vertex_index : u32;
-};
+}
[[binding(1), group(2)]] var<uniform> tint_symbol_1 : tint_symbol;
@@ -279,7 +279,7 @@
struct tint_symbol {
first_vertex_index : u32;
first_instance_index : u32;
-};
+}
[[binding(1), group(2)]] var<uniform> tint_symbol_1 : tint_symbol;
diff --git a/src/transform/localize_struct_array_assignment_test.cc b/src/transform/localize_struct_array_assignment_test.cc
index 197aa02..2b3b0c9 100644
--- a/src/transform/localize_struct_array_assignment_test.cc
+++ b/src/transform/localize_struct_array_assignment_test.cc
@@ -70,15 +70,15 @@
[[block]]
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct OuterS {
a1 : array<InnerS, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
@@ -132,19 +132,19 @@
[[block]]
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct S1 {
a : array<InnerS, 8>;
-};
+}
struct OuterS {
s2 : S1;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
@@ -196,15 +196,15 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct OuterS {
a1 : array<array<InnerS, 8>, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
@@ -258,19 +258,19 @@
[[block]]
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct S1 {
s2 : InnerS;
-};
+}
struct OuterS {
a1 : array<S1, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
@@ -326,19 +326,19 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct S1 {
a2 : array<InnerS, 8>;
-};
+}
struct OuterS {
a1 : array<S1, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
@@ -403,19 +403,19 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct S1 {
a2 : array<InnerS, 8>;
-};
+}
struct OuterS {
a1 : array<S1, 8>;
-};
+}
var<private> nextIndex : u32;
@@ -476,15 +476,15 @@
[[block]]
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct OuterS {
a1 : array<InnerS, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
@@ -544,15 +544,15 @@
[[block]]
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct OuterS {
a1 : array<InnerS, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
@@ -584,12 +584,12 @@
[[block]]
struct Uniforms {
i : u32;
-};
+}
[[block]]
struct OuterS {
a1 : array<u32, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/src/transform/module_scope_var_to_entry_point_param_test.cc b/src/transform/module_scope_var_to_entry_point_param_test.cc
index 0f7d518..87507ce 100644
--- a/src/transform/module_scope_var_to_entry_point_param_test.cc
+++ b/src/transform/module_scope_var_to_entry_point_param_test.cc
@@ -218,7 +218,7 @@
auto* expect = R"(
struct S {
a : f32;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main([[group(0), binding(0), internal(disable_validation__entry_point_parameter), internal(disable_validation__ignore_storage_class)]] tint_symbol : ptr<uniform, S>, [[group(0), binding(1), internal(disable_validation__entry_point_parameter), internal(disable_validation__ignore_storage_class)]] tint_symbol_1 : ptr<storage, S>) {
@@ -246,7 +246,7 @@
auto* expect = R"(
struct tint_symbol_1 {
arr : array<f32>;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main([[group(0), binding(0), internal(disable_validation__entry_point_parameter), internal(disable_validation__ignore_storage_class)]] tint_symbol : ptr<storage, tint_symbol_1>) {
@@ -275,7 +275,7 @@
auto* expect = R"(
struct tint_symbol_1 {
arr : array<f32>;
-};
+}
type myarray = array<f32>;
@@ -308,11 +308,11 @@
auto* expect = R"(
struct S {
f : f32;
-};
+}
struct tint_symbol_1 {
arr : array<S>;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main([[group(0), binding(0), internal(disable_validation__entry_point_parameter), internal(disable_validation__ignore_storage_class)]] tint_symbol : ptr<storage, tint_symbol_1>) {
@@ -360,7 +360,7 @@
auto* expect = R"(
struct S {
a : f32;
-};
+}
fn no_uses() {
}
@@ -479,7 +479,7 @@
auto* expect = R"(
struct tint_symbol_2 {
m : mat2x2<f32>;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main([[internal(disable_validation__entry_point_parameter)]] tint_symbol_1 : ptr<workgroup, tint_symbol_2>) {
@@ -512,15 +512,15 @@
auto* expect = R"(
struct S1 {
m : mat2x2<f32>;
-};
+}
struct S2 {
s : S1;
-};
+}
struct tint_symbol_2 {
m : array<S2, 4u>;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main([[internal(disable_validation__entry_point_parameter)]] tint_symbol_1 : ptr<workgroup, tint_symbol_2>) {
@@ -556,12 +556,12 @@
auto* expect = R"(
struct S {
m : mat2x2<f32>;
-};
+}
struct tint_symbol_3 {
a : S;
b : S;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main([[internal(disable_validation__entry_point_parameter)]] tint_symbol_1 : ptr<workgroup, tint_symbol_3>) {
@@ -602,7 +602,7 @@
auto* expect = R"(
struct S {
a : f32;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main() {
diff --git a/src/transform/multiplanar_external_texture_test.cc b/src/transform/multiplanar_external_texture_test.cc
index 631d76b..e4c1d55 100644
--- a/src/transform/multiplanar_external_texture_test.cc
+++ b/src/transform/multiplanar_external_texture_test.cc
@@ -84,7 +84,7 @@
ug : f32;
vg : f32;
ub : f32;
-};
+}
[[group(0), binding(1)]] var ext_tex_plane_1 : texture_2d<f32>;
@@ -128,7 +128,7 @@
ug : f32;
vg : f32;
ub : f32;
-};
+}
[[group(0), binding(2)]] var ext_tex_plane_1 : texture_2d<f32>;
@@ -181,7 +181,7 @@
ug : f32;
vg : f32;
ub : f32;
-};
+}
[[group(0), binding(1)]] var ext_tex_plane_1 : texture_2d<f32>;
@@ -238,7 +238,7 @@
ug : f32;
vg : f32;
ub : f32;
-};
+}
[[group(0), binding(2)]] var ext_tex_plane_1 : texture_2d<f32>;
@@ -311,7 +311,7 @@
ug : f32;
vg : f32;
ub : f32;
-};
+}
[[group(0), binding(4)]] var ext_tex_plane_1 : texture_2d<f32>;
@@ -393,7 +393,7 @@
ug : f32;
vg : f32;
ub : f32;
-};
+}
fn textureSampleExternal(plane0 : texture_2d<f32>, plane1 : texture_2d<f32>, smp : sampler, coord : vec2<f32>, params : ExternalTextureParams) -> vec4<f32> {
if ((params.numPlanes == 1u)) {
@@ -459,7 +459,7 @@
ug : f32;
vg : f32;
ub : f32;
-};
+}
fn textureSampleExternal(plane0 : texture_2d<f32>, plane1 : texture_2d<f32>, smp : sampler, coord : vec2<f32>, params : ExternalTextureParams) -> vec4<f32> {
if ((params.numPlanes == 1u)) {
@@ -527,7 +527,7 @@
ug : f32;
vg : f32;
ub : f32;
-};
+}
fn textureSampleExternal(plane0 : texture_2d<f32>, plane1 : texture_2d<f32>, smp : sampler, coord : vec2<f32>, params : ExternalTextureParams) -> vec4<f32> {
if ((params.numPlanes == 1u)) {
@@ -605,7 +605,7 @@
ug : f32;
vg : f32;
ub : f32;
-};
+}
fn textureSampleExternal(plane0 : texture_2d<f32>, plane1 : texture_2d<f32>, smp : sampler, coord : vec2<f32>, params : ExternalTextureParams) -> vec4<f32> {
if ((params.numPlanes == 1u)) {
diff --git a/src/transform/num_workgroups_from_uniform_test.cc b/src/transform/num_workgroups_from_uniform_test.cc
index 9d1b81d..ecb221a 100644
--- a/src/transform/num_workgroups_from_uniform_test.cc
+++ b/src/transform/num_workgroups_from_uniform_test.cc
@@ -68,7 +68,7 @@
auto* expect = R"(
struct tint_symbol_2 {
num_workgroups : vec3<u32>;
-};
+}
[[group(0), binding(30)]] var<uniform> tint_symbol_3 : tint_symbol_2;
@@ -110,13 +110,13 @@
auto* expect = R"(
struct tint_symbol_2 {
num_workgroups : vec3<u32>;
-};
+}
[[group(0), binding(30)]] var<uniform> tint_symbol_3 : tint_symbol_2;
struct Builtins {
num_wgs : vec3<u32>;
-};
+}
fn main_inner(in : Builtins) {
let groups_x = in.num_wgs.x;
@@ -158,7 +158,7 @@
auto* expect = R"(
struct tint_symbol_2 {
num_workgroups : vec3<u32>;
-};
+}
[[group(0), binding(30)]] var<uniform> tint_symbol_3 : tint_symbol_2;
@@ -166,14 +166,14 @@
gid : vec3<u32>;
num_wgs : vec3<u32>;
wgid : vec3<u32>;
-};
+}
struct tint_symbol_1 {
[[builtin(global_invocation_id)]]
gid : vec3<u32>;
[[builtin(workgroup_id)]]
wgid : vec3<u32>;
-};
+}
fn main_inner(in : Builtins) {
let groups_x = in.num_wgs.x;
@@ -233,19 +233,19 @@
auto* expect = R"(
struct tint_symbol_6 {
num_workgroups : vec3<u32>;
-};
+}
[[group(0), binding(30)]] var<uniform> tint_symbol_7 : tint_symbol_6;
struct Builtins1 {
num_wgs : vec3<u32>;
-};
+}
struct Builtins2 {
gid : vec3<u32>;
num_wgs : vec3<u32>;
wgid : vec3<u32>;
-};
+}
fn main1_inner(in : Builtins1) {
let groups_x = in.num_wgs.x;
@@ -263,7 +263,7 @@
gid : vec3<u32>;
[[builtin(workgroup_id)]]
wgid : vec3<u32>;
-};
+}
fn main2_inner(in : Builtins2) {
let groups_x = in.num_wgs.x;
@@ -313,14 +313,14 @@
struct Builtins {
gid : vec3<u32>;
wgid : vec3<u32>;
-};
+}
struct tint_symbol_1 {
[[builtin(global_invocation_id)]]
gid : vec3<u32>;
[[builtin(workgroup_id)]]
wgid : vec3<u32>;
-};
+}
fn main_inner(in : Builtins) {
}
diff --git a/src/transform/pad_array_elements_test.cc b/src/transform/pad_array_elements_test.cc
index 7483f3f..05ca2da 100644
--- a/src/transform/pad_array_elements_test.cc
+++ b/src/transform/pad_array_elements_test.cc
@@ -52,7 +52,7 @@
struct tint_padded_array_element {
[[size(8)]]
el : i32;
-};
+}
var<private> arr : array<tint_padded_array_element, 4u>;
)";
@@ -72,11 +72,11 @@
struct tint_padded_array_element {
[[size(8)]]
el : i32;
-};
+}
struct S {
rta : array<tint_padded_array_element>;
-};
+}
)";
auto got = Run<PadArrayElements>(src);
@@ -97,7 +97,7 @@
struct tint_padded_array_element {
[[size(16)]]
el : i32;
-};
+}
fn f() {
var arr : array<tint_padded_array_element, 4u>;
@@ -122,7 +122,7 @@
struct tint_padded_array_element {
[[size(12)]]
el : i32;
-};
+}
fn f(a : array<tint_padded_array_element, 4u>) -> i32 {
return a[2].el;
@@ -175,7 +175,7 @@
struct tint_padded_array_element {
[[size(16)]]
el : i32;
-};
+}
type Array = array<tint_padded_array_element, 4u>;
@@ -207,24 +207,24 @@
struct tint_padded_array_element {
[[size(8)]]
el : i32;
-};
+}
struct tint_padded_array_element_1 {
[[size(8)]]
el : i32;
-};
+}
struct tint_padded_array_element_2 {
[[size(12)]]
el : i32;
-};
+}
struct S {
a : array<tint_padded_array_element, 4u>;
b : array<tint_padded_array_element_1, 8u>;
c : array<tint_padded_array_element, 4u>;
d : array<tint_padded_array_element_2, 8u>;
-};
+}
)";
auto got = Run<PadArrayElements>(src);
@@ -244,38 +244,38 @@
struct tint_padded_array_element {
[[size(512)]]
el : i32;
-};
+}
struct tint_padded_array_element_2 {
[[size(32)]]
el : i32;
-};
+}
struct tint_padded_array_element_1 {
[[size(512)]]
el : array<tint_padded_array_element_2, 4u>;
-};
+}
struct tint_padded_array_element_5 {
[[size(8)]]
el : i32;
-};
+}
struct tint_padded_array_element_4 {
[[size(64)]]
el : array<tint_padded_array_element_5, 4u>;
-};
+}
struct tint_padded_array_element_3 {
[[size(512)]]
el : array<tint_padded_array_element_4, 4u>;
-};
+}
struct S {
a : array<tint_padded_array_element, 4u>;
b : array<tint_padded_array_element_1, 4u>;
c : array<tint_padded_array_element_3, 4u>;
-};
+}
)";
auto got = Run<PadArrayElements>(src);
@@ -299,38 +299,38 @@
struct tint_padded_array_element {
[[size(512)]]
el : i32;
-};
+}
struct tint_padded_array_element_2 {
[[size(32)]]
el : i32;
-};
+}
struct tint_padded_array_element_1 {
[[size(512)]]
el : array<tint_padded_array_element_2, 4u>;
-};
+}
struct tint_padded_array_element_5 {
[[size(8)]]
el : i32;
-};
+}
struct tint_padded_array_element_4 {
[[size(64)]]
el : array<tint_padded_array_element_5, 4u>;
-};
+}
struct tint_padded_array_element_3 {
[[size(512)]]
el : array<tint_padded_array_element_4, 4u>;
-};
+}
struct S {
a : array<tint_padded_array_element, 4u>;
b : array<tint_padded_array_element_1, 4u>;
c : array<tint_padded_array_element_3, 4u>;
-};
+}
fn f(s : S) -> i32 {
return ((s.a[2].el + s.b[1].el[2].el) + s.c[3].el[1].el[2].el);
@@ -365,7 +365,7 @@
struct tint_padded_array_element {
[[size(8)]]
el : i32;
-};
+}
type T1 = array<tint_padded_array_element, 1u>;
@@ -374,7 +374,7 @@
struct tint_padded_array_element_1 {
[[size(8)]]
el : i32;
-};
+}
fn f1(a : array<tint_padded_array_element_1, 2u>) {
}
@@ -384,7 +384,7 @@
struct tint_padded_array_element_2 {
[[size(8)]]
el : i32;
-};
+}
fn f2() {
var v : array<tint_padded_array_element_2, 3u>;
diff --git a/src/transform/promote_initializers_to_const_var_test.cc b/src/transform/promote_initializers_to_const_var_test.cc
index b32d153..8e2dc25 100644
--- a/src/transform/promote_initializers_to_const_var_test.cc
+++ b/src/transform/promote_initializers_to_const_var_test.cc
@@ -67,7 +67,7 @@
a : i32;
b : f32;
c : vec3<f32>;
-};
+}
fn f() {
let tint_symbol = S(1, 2.0, vec3<f32>());
@@ -126,7 +126,7 @@
a : i32;
b : f32;
c : vec3<f32>;
-};
+}
fn f() {
var insert_after = 1;
@@ -288,17 +288,17 @@
auto* expect = R"(
struct S1 {
a : i32;
-};
+}
struct S2 {
a : i32;
b : S1;
c : i32;
-};
+}
struct S3 {
a : S2;
-};
+}
fn f() {
let tint_symbol = S1(2);
@@ -331,11 +331,11 @@
auto* expect = R"(
struct S1 {
a : i32;
-};
+}
struct S2 {
a : array<S1, 3u>;
-};
+}
fn f() {
let tint_symbol = S1(1);
@@ -358,7 +358,7 @@
a : i32;
b : f32;
c : i32;
-};
+}
fn f() {
var local_arr = array<f32, 4u>(0.0, 1.0, 2.0, 3.0);
diff --git a/src/transform/remove_phonies_test.cc b/src/transform/remove_phonies_test.cc
index 837e34c..6d6c86d 100644
--- a/src/transform/remove_phonies_test.cc
+++ b/src/transform/remove_phonies_test.cc
@@ -204,7 +204,7 @@
auto* expect = R"(
struct S {
arr : array<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> s : S;
diff --git a/src/transform/robustness_test.cc b/src/transform/robustness_test.cc
index 4c0025e..a471381 100644
--- a/src/transform/robustness_test.cc
+++ b/src/transform/robustness_test.cc
@@ -630,7 +630,7 @@
struct S {
a : f32;
b : array<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> s : S;
@@ -794,7 +794,7 @@
struct S {
a : f32;
b : array<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> s : S;
@@ -874,7 +874,7 @@
struct S {
a : array<f32, 4>;
b : array<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> s : S;
@@ -882,7 +882,7 @@
struct U {
a : UArr;
-};
+}
[[group(1), binding(0)]] var<uniform> u : U;
@@ -937,7 +937,7 @@
struct S {
a : array<f32, 4>;
b : array<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> s : S;
@@ -945,7 +945,7 @@
struct U {
a : UArr;
-};
+}
[[group(1), binding(0)]] var<uniform> u : U;
@@ -1002,7 +1002,7 @@
struct S {
a : array<f32, 4>;
b : array<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> s : S;
@@ -1010,7 +1010,7 @@
struct U {
a : UArr;
-};
+}
[[group(1), binding(0)]] var<uniform> u : U;
@@ -1067,7 +1067,7 @@
struct S {
a : array<f32, 4>;
b : array<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> s : S;
@@ -1075,7 +1075,7 @@
struct U {
a : UArr;
-};
+}
[[group(1), binding(0)]] var<uniform> u : U;
diff --git a/src/transform/simplify_pointers_test.cc b/src/transform/simplify_pointers_test.cc
index 0fdf806..6b55d32 100644
--- a/src/transform/simplify_pointers_test.cc
+++ b/src/transform/simplify_pointers_test.cc
@@ -168,7 +168,7 @@
auto* expect = R"(
struct S {
i : i32;
-};
+}
fn arr() {
var a : array<S, 2>;
@@ -325,11 +325,11 @@
struct Inner {
a : array<i32, 2>;
-};
+}
struct Outer {
a : array<Inner, 2>;
-};
+}
fn f() {
var arr : array<Outer, 2>;
diff --git a/src/transform/unshadow_test.cc b/src/transform/unshadow_test.cc
index 2a4cbed..ddba826 100644
--- a/src/transform/unshadow_test.cc
+++ b/src/transform/unshadow_test.cc
@@ -102,7 +102,7 @@
auto* expect = R"(
struct a {
m : i32;
-};
+}
fn X() {
var a_1 = true;
diff --git a/src/transform/vertex_pulling_test.cc b/src/transform/vertex_pulling_test.cc
index b43d4a4..10b8ee8 100644
--- a/src/transform/vertex_pulling_test.cc
+++ b/src/transform/vertex_pulling_test.cc
@@ -109,7 +109,7 @@
auto* expect = R"(
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
-};
+}
[[stage(vertex)]]
fn main() -> [[builtin(position)]] vec4<f32> {
@@ -138,7 +138,7 @@
auto* expect = R"(
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
-};
+}
[[binding(0), group(4)]] var<storage, read> tint_pulling_vertex_buffer_0 : TintVertexData;
@@ -176,7 +176,7 @@
auto* expect = R"(
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
-};
+}
[[binding(0), group(4)]] var<storage, read> tint_pulling_vertex_buffer_0 : TintVertexData;
@@ -214,7 +214,7 @@
auto* expect = R"(
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
-};
+}
[[binding(0), group(5)]] var<storage, read> tint_pulling_vertex_buffer_0 : TintVertexData;
@@ -257,14 +257,14 @@
auto* expect = R"(
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
-};
+}
[[binding(0), group(4)]] var<storage, read> tint_pulling_vertex_buffer_0 : TintVertexData;
struct Inputs {
[[location(0)]]
var_a : f32;
-};
+}
[[stage(vertex)]]
fn main([[builtin(vertex_index)]] tint_pulling_vertex_index : u32) -> [[builtin(position)]] vec4<f32> {
@@ -305,7 +305,7 @@
auto* expect = R"(
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
-};
+}
[[binding(0), group(4)]] var<storage, read> tint_pulling_vertex_buffer_0 : TintVertexData;
@@ -365,7 +365,7 @@
auto* expect = R"(
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
-};
+}
[[binding(0), group(4)]] var<storage, read> tint_pulling_vertex_buffer_0 : TintVertexData;
@@ -376,7 +376,7 @@
custom_vertex_index : u32;
[[builtin(instance_index)]]
custom_instance_index : u32;
-};
+}
struct Inputs {
[[location(0)]]
@@ -387,7 +387,7 @@
custom_vertex_index : u32;
[[builtin(instance_index)]]
custom_instance_index : u32;
-};
+}
[[stage(vertex)]]
fn main(tint_symbol_1 : tint_symbol) -> [[builtin(position)]] vec4<f32> {
@@ -447,7 +447,7 @@
auto* expect = R"(
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
-};
+}
[[binding(0), group(4)]] var<storage, read> tint_pulling_vertex_buffer_0 : TintVertexData;
@@ -458,14 +458,14 @@
var_a : f32;
[[location(1)]]
var_b : f32;
-};
+}
struct Indices {
[[builtin(vertex_index)]]
custom_vertex_index : u32;
[[builtin(instance_index)]]
custom_instance_index : u32;
-};
+}
[[stage(vertex)]]
fn main(indices : Indices) -> [[builtin(position)]] vec4<f32> {
@@ -514,7 +514,7 @@
auto* expect = R"(
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
-};
+}
[[binding(0), group(4)]] var<storage, read> tint_pulling_vertex_buffer_0 : TintVertexData;
@@ -559,7 +559,7 @@
auto* expect = R"(
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
-};
+}
[[binding(0), group(4)]] var<storage, read> tint_pulling_vertex_buffer_0 : TintVertexData;
@@ -615,7 +615,7 @@
auto* expect = R"(
struct TintVertexData {
tint_vertex_data_1 : [[stride(4)]] array<u32>;
-};
+}
[[binding(0), group(4)]] var<storage, read> tint_pulling_vertex_buffer_0_1 : TintVertexData;
@@ -692,7 +692,7 @@
auto* expect = R"(
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
-};
+}
[[binding(0), group(4)]] var<storage, read> tint_pulling_vertex_buffer_0 : TintVertexData;
@@ -852,7 +852,7 @@
R"(
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
-};
+}
[[binding(0), group(4)]] var<storage, read> tint_pulling_vertex_buffer_0 : TintVertexData;
@@ -1011,7 +1011,7 @@
auto* expect = R"(
struct TintVertexData {
tint_vertex_data : [[stride(4)]] array<u32>;
-};
+}
[[binding(0), group(4)]] var<storage, read> tint_pulling_vertex_buffer_0 : TintVertexData;
diff --git a/src/transform/wrap_arrays_in_structs_test.cc b/src/transform/wrap_arrays_in_structs_test.cc
index a93f995..21aa7c84c 100644
--- a/src/transform/wrap_arrays_in_structs_test.cc
+++ b/src/transform/wrap_arrays_in_structs_test.cc
@@ -41,7 +41,7 @@
auto* expect = R"(
struct tint_array_wrapper {
arr : array<i32, 4u>;
-};
+}
var<private> arr : tint_array_wrapper;
)";
@@ -61,7 +61,7 @@
auto* expect = R"(
struct tint_array_wrapper {
arr : array<i32, 4u>;
-};
+}
fn f() {
var arr : tint_array_wrapper;
@@ -83,7 +83,7 @@
auto* expect = R"(
struct tint_array_wrapper {
arr : array<i32, 4u>;
-};
+}
fn f(a : tint_array_wrapper) -> i32 {
return a.arr[2];
@@ -104,7 +104,7 @@
auto* expect = R"(
struct tint_array_wrapper {
arr : array<i32, 4u>;
-};
+}
fn f() -> tint_array_wrapper {
return tint_array_wrapper(array<i32, 4u>(1, 2, 3, 4));
@@ -133,13 +133,13 @@
auto* expect = R"(
struct tint_array_wrapper {
arr : array<i32, 2u>;
-};
+}
type Inner = tint_array_wrapper;
struct tint_array_wrapper_1 {
arr : array<tint_array_wrapper, 2u>;
-};
+}
type Array = tint_array_wrapper_1;
@@ -169,17 +169,17 @@
auto* expect = R"(
struct tint_array_wrapper {
arr : array<i32, 4u>;
-};
+}
struct tint_array_wrapper_1 {
arr : array<i32, 8u>;
-};
+}
struct S {
a : tint_array_wrapper;
b : tint_array_wrapper_1;
c : tint_array_wrapper;
-};
+}
)";
auto got = Run<WrapArraysInStructs>(src);
@@ -198,21 +198,21 @@
auto* expect = R"(
struct tint_array_wrapper {
arr : array<i32, 4u>;
-};
+}
struct tint_array_wrapper_1 {
arr : array<tint_array_wrapper, 4u>;
-};
+}
struct tint_array_wrapper_2 {
arr : array<tint_array_wrapper_1, 4u>;
-};
+}
struct S {
a : tint_array_wrapper;
b : tint_array_wrapper_1;
c : tint_array_wrapper_2;
-};
+}
)";
auto got = Run<WrapArraysInStructs>(src);
@@ -235,21 +235,21 @@
auto* expect = R"(
struct tint_array_wrapper {
arr : array<i32, 4u>;
-};
+}
struct tint_array_wrapper_1 {
arr : array<tint_array_wrapper, 4u>;
-};
+}
struct tint_array_wrapper_2 {
arr : array<tint_array_wrapper_1, 4u>;
-};
+}
struct S {
a : tint_array_wrapper;
b : tint_array_wrapper_1;
c : tint_array_wrapper_2;
-};
+}
fn f(s : S) -> i32 {
return ((s.a.arr[2] + s.b.arr[1].arr[2]) + s.c.arr[3].arr[1].arr[2]);
@@ -283,7 +283,7 @@
struct tint_array_wrapper {
arr : array<i32, 1u>;
-};
+}
type T1 = tint_array_wrapper;
@@ -291,7 +291,7 @@
struct tint_array_wrapper_1 {
arr : array<i32, 2u>;
-};
+}
fn f1(a : tint_array_wrapper_1) {
}
@@ -300,7 +300,7 @@
struct tint_array_wrapper_2 {
arr : array<i32, 3u>;
-};
+}
fn f2() {
var v : tint_array_wrapper_2;
diff --git a/src/transform/zero_init_workgroup_memory_test.cc b/src/transform/zero_init_workgroup_memory_test.cc
index f76e3a7..166036e 100644
--- a/src/transform/zero_init_workgroup_memory_test.cc
+++ b/src/transform/zero_init_workgroup_memory_test.cc
@@ -118,7 +118,7 @@
struct Params {
[[builtin(local_invocation_index)]]
local_idx : u32;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn f(params : Params) {
@@ -187,7 +187,7 @@
struct S {
x : i32;
y : array<i32, 8>;
-};
+}
var<workgroup> a : i32;
@@ -251,7 +251,7 @@
struct S {
x : i32;
y : array<i32, 8>;
-};
+}
var<workgroup> a : i32;
@@ -318,7 +318,7 @@
struct S {
x : i32;
y : array<i32, 8>;
-};
+}
var<workgroup> a : i32;
@@ -389,7 +389,7 @@
x : array<array<i32, 8>, 10>;
y : array<i32, 8>;
z : array<array<array<i32, 8>, 10>, 20>;
-};
+}
var<workgroup> a : i32;
@@ -473,7 +473,7 @@
struct S {
x : i32;
y : array<i32, 8>;
-};
+}
var<workgroup> a : i32;
@@ -546,7 +546,7 @@
struct S {
x : i32;
y : array<i32, 8>;
-};
+}
var<workgroup> a : i32;
@@ -711,7 +711,7 @@
b : f32;
u : atomic<u32>;
c : u32;
-};
+}
var<workgroup> w : S;
@@ -786,7 +786,7 @@
b : f32;
u : atomic<u32>;
c : u32;
-};
+}
var<workgroup> w : array<S, 4>;
diff --git a/src/writer/wgsl/generator_impl.cc b/src/writer/wgsl/generator_impl.cc
index a4c3ed9..1295c76 100644
--- a/src/writer/wgsl/generator_impl.cc
+++ b/src/writer/wgsl/generator_impl.cc
@@ -573,7 +573,7 @@
}
decrement_indent();
- line() << "};";
+ line() << "}";
return true;
}
diff --git a/src/writer/wgsl/generator_impl_alias_type_test.cc b/src/writer/wgsl/generator_impl_alias_type_test.cc
index 754849d..f1a2f47 100644
--- a/src/writer/wgsl/generator_impl_alias_type_test.cc
+++ b/src/writer/wgsl/generator_impl_alias_type_test.cc
@@ -46,7 +46,7 @@
EXPECT_EQ(gen.result(), R"(struct A {
a : f32;
b : i32;
-};
+}
type B = A;
)");
}
diff --git a/src/writer/wgsl/generator_impl_function_test.cc b/src/writer/wgsl/generator_impl_function_test.cc
index 89dd681..3aebf94 100644
--- a/src/writer/wgsl/generator_impl_function_test.cc
+++ b/src/writer/wgsl/generator_impl_function_test.cc
@@ -213,7 +213,7 @@
EXPECT_EQ(gen.result(), R"([[block]]
struct Data {
d : f32;
-};
+}
[[binding(0), group(0)]] var<storage, read_write> data : Data;
diff --git a/src/writer/wgsl/generator_impl_global_decl_test.cc b/src/writer/wgsl/generator_impl_global_decl_test.cc
index 3859db4..e22a75e 100644
--- a/src/writer/wgsl/generator_impl_global_decl_test.cc
+++ b/src/writer/wgsl/generator_impl_global_decl_test.cc
@@ -79,7 +79,7 @@
struct S0 {
a : i32;
- };
+ }
fn func() -> f32 {
return a0;
@@ -89,7 +89,7 @@
struct S1 {
a : i32;
- };
+ }
[[stage(compute), workgroup_size(1)]]
fn main() {
diff --git a/src/writer/wgsl/generator_impl_type_test.cc b/src/writer/wgsl/generator_impl_type_test.cc
index 236c1b1..dd1355e 100644
--- a/src/writer/wgsl/generator_impl_type_test.cc
+++ b/src/writer/wgsl/generator_impl_type_test.cc
@@ -168,7 +168,7 @@
[[size(4)]]
padding_1 : u32;
b : f32;
-};
+}
)");
}
@@ -189,7 +189,7 @@
[[size(4)]]
padding_1 : u32;
tint_2_padding : f32;
-};
+}
)");
}
@@ -207,7 +207,7 @@
a : i32;
[[align(16)]]
b : f32;
-};
+}
)");
}
@@ -225,7 +225,7 @@
a : i32;
[[size(32)]]
b : f32;
-};
+}
)");
}
@@ -245,7 +245,7 @@
a : i32;
[[align(8)]]
b : f32;
-};
+}
)");
}
@@ -269,7 +269,7 @@
a : u32;
[[location(2)]]
b : f32;
-};
+}
)");
}
diff --git a/test/array/assign_to_function_var.wgsl.expected.wgsl b/test/array/assign_to_function_var.wgsl.expected.wgsl
index 8d3a0c0..3951d85 100644
--- a/test/array/assign_to_function_var.wgsl.expected.wgsl
+++ b/test/array/assign_to_function_var.wgsl.expected.wgsl
@@ -2,7 +2,7 @@
struct S {
arr : ArrayType;
-};
+}
var<private> src_private : ArrayType;
diff --git a/test/array/assign_to_private_var.wgsl.expected.wgsl b/test/array/assign_to_private_var.wgsl.expected.wgsl
index c5e4e1f..56f7ba5 100644
--- a/test/array/assign_to_private_var.wgsl.expected.wgsl
+++ b/test/array/assign_to_private_var.wgsl.expected.wgsl
@@ -2,7 +2,7 @@
struct S {
arr : ArrayType;
-};
+}
var<private> src_private : ArrayType;
diff --git a/test/array/assign_to_storage_var.wgsl.expected.wgsl b/test/array/assign_to_storage_var.wgsl.expected.wgsl
index cb0b54b..dce03ab 100644
--- a/test/array/assign_to_storage_var.wgsl.expected.wgsl
+++ b/test/array/assign_to_storage_var.wgsl.expected.wgsl
@@ -2,11 +2,11 @@
struct S {
arr : ArrayType;
-};
+}
struct S_nested {
arr : array<array<array<i32, 2>, 3>, 4>;
-};
+}
var<private> src_private : ArrayType;
diff --git a/test/array/assign_to_subexpr.wgsl.expected.wgsl b/test/array/assign_to_subexpr.wgsl.expected.wgsl
index 6ab4099..6d1ab68 100644
--- a/test/array/assign_to_subexpr.wgsl.expected.wgsl
+++ b/test/array/assign_to_subexpr.wgsl.expected.wgsl
@@ -2,7 +2,7 @@
struct S {
arr : array<i32, 4>;
-};
+}
fn foo() {
let src : ArrayType = ArrayType();
diff --git a/test/array/assign_to_workgroup_var.wgsl.expected.wgsl b/test/array/assign_to_workgroup_var.wgsl.expected.wgsl
index 0d3b5a3..a5a27e3 100644
--- a/test/array/assign_to_workgroup_var.wgsl.expected.wgsl
+++ b/test/array/assign_to_workgroup_var.wgsl.expected.wgsl
@@ -2,7 +2,7 @@
struct S {
arr : ArrayType;
-};
+}
var<private> src_private : ArrayType;
diff --git a/test/benchmark/particles.wgsl.expected.wgsl b/test/benchmark/particles.wgsl.expected.wgsl
index 856f496..0ab3f50 100644
--- a/test/benchmark/particles.wgsl.expected.wgsl
+++ b/test/benchmark/particles.wgsl.expected.wgsl
@@ -10,7 +10,7 @@
modelViewProjectionMatrix : mat4x4<f32>;
right : vec3<f32>;
up : vec3<f32>;
-};
+}
[[binding(0), group(0)]] var<uniform> render_params : RenderParams;
@@ -21,7 +21,7 @@
color : vec4<f32>;
[[location(2)]]
quad_pos : vec2<f32>;
-};
+}
struct VertexOutput {
[[builtin(position)]]
@@ -30,7 +30,7 @@
color : vec4<f32>;
[[location(1)]]
quad_pos : vec2<f32>;
-};
+}
[[stage(vertex)]]
fn vs_main(in : VertexInput) -> VertexOutput {
@@ -53,18 +53,18 @@
struct SimulationParams {
deltaTime : f32;
seed : vec4<f32>;
-};
+}
struct Particle {
position : vec3<f32>;
lifetime : f32;
color : vec4<f32>;
velocity : vec3<f32>;
-};
+}
struct Particles {
particles : array<Particle>;
-};
+}
[[binding(0), group(0)]] var<uniform> sim_params : SimulationParams;
@@ -104,11 +104,11 @@
struct UBO {
width : u32;
-};
+}
struct Buffer {
weights : array<f32>;
-};
+}
[[binding(3), group(0)]] var<uniform> ubo : UBO;
diff --git a/test/benchmark/simple_compute.wgsl.expected.wgsl b/test/benchmark/simple_compute.wgsl.expected.wgsl
index ac98410..a83b28f 100644
--- a/test/benchmark/simple_compute.wgsl.expected.wgsl
+++ b/test/benchmark/simple_compute.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB {
data : array<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> buffer : SB;
diff --git a/test/benchmark/simple_fragment.wgsl.expected.wgsl b/test/benchmark/simple_fragment.wgsl.expected.wgsl
index 1f4225e..7236de2 100644
--- a/test/benchmark/simple_fragment.wgsl.expected.wgsl
+++ b/test/benchmark/simple_fragment.wgsl.expected.wgsl
@@ -1,12 +1,12 @@
struct Input {
[[location(0)]]
color : vec4<f32>;
-};
+}
struct Output {
[[location(0)]]
color : vec4<f32>;
-};
+}
[[stage(fragment)]]
fn main(in : Input) -> Output {
diff --git a/test/benchmark/simple_vertex.wgsl.expected.wgsl b/test/benchmark/simple_vertex.wgsl.expected.wgsl
index 7bc18b1..fdce23e 100644
--- a/test/benchmark/simple_vertex.wgsl.expected.wgsl
+++ b/test/benchmark/simple_vertex.wgsl.expected.wgsl
@@ -1,12 +1,12 @@
struct Input {
[[location(0)]]
position : vec4<f32>;
-};
+}
struct Output {
[[builtin(position)]]
position : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main(in : Input) -> Output {
diff --git a/test/buffer/storage/dynamic_index/read.wgsl.expected.wgsl b/test/buffer/storage/dynamic_index/read.wgsl.expected.wgsl
index 0363eda..bd24ab0 100644
--- a/test/buffer/storage/dynamic_index/read.wgsl.expected.wgsl
+++ b/test/buffer/storage/dynamic_index/read.wgsl.expected.wgsl
@@ -8,11 +8,11 @@
g : mat2x3<f32>;
h : mat3x2<f32>;
i : [[stride(16)]] array<vec4<i32>, 4>;
-};
+}
struct S {
arr : array<Inner>;
-};
+}
[[binding(0), group(0)]] var<storage, read> s : S;
diff --git a/test/buffer/storage/dynamic_index/write.wgsl.expected.wgsl b/test/buffer/storage/dynamic_index/write.wgsl.expected.wgsl
index db3497d..b015519 100644
--- a/test/buffer/storage/dynamic_index/write.wgsl.expected.wgsl
+++ b/test/buffer/storage/dynamic_index/write.wgsl.expected.wgsl
@@ -8,11 +8,11 @@
g : mat2x3<f32>;
h : mat3x2<f32>;
i : [[stride(16)]] array<vec4<i32>, 4>;
-};
+}
struct S {
arr : array<Inner>;
-};
+}
[[binding(0), group(0)]] var<storage, read_write> s : S;
diff --git a/test/buffer/storage/static_index/read.wgsl.expected.wgsl b/test/buffer/storage/static_index/read.wgsl.expected.wgsl
index 8a9f17c..56187c5 100644
--- a/test/buffer/storage/static_index/read.wgsl.expected.wgsl
+++ b/test/buffer/storage/static_index/read.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct Inner {
x : i32;
-};
+}
struct S {
a : vec3<i32>;
@@ -13,7 +13,7 @@
h : mat3x2<f32>;
i : Inner;
j : [[stride(16)]] array<Inner, 4>;
-};
+}
[[binding(0), group(0)]] var<storage, read> s : S;
diff --git a/test/buffer/storage/static_index/write.wgsl.expected.wgsl b/test/buffer/storage/static_index/write.wgsl.expected.wgsl
index b4c8329..46cdde8 100644
--- a/test/buffer/storage/static_index/write.wgsl.expected.wgsl
+++ b/test/buffer/storage/static_index/write.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct Inner {
x : i32;
-};
+}
struct S {
a : vec3<i32>;
@@ -13,7 +13,7 @@
h : mat3x2<f32>;
i : Inner;
j : [[stride(16)]] array<Inner, 4>;
-};
+}
[[binding(0), group(0)]] var<storage, write> s : S;
diff --git a/test/buffer/storage/types/runtime_array.wgsl.expected.wgsl b/test/buffer/storage/types/runtime_array.wgsl.expected.wgsl
index 418c67d..2aca9cd 100644
--- a/test/buffer/storage/types/runtime_array.wgsl.expected.wgsl
+++ b/test/buffer/storage/types/runtime_array.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
f : f32;
-};
+}
[[group(0), binding(0)]] var<storage, read> in : array<S>;
diff --git a/test/buffer/storage/types/struct.wgsl.expected.wgsl b/test/buffer/storage/types/struct.wgsl.expected.wgsl
index f86c26b..dd840d4 100644
--- a/test/buffer/storage/types/struct.wgsl.expected.wgsl
+++ b/test/buffer/storage/types/struct.wgsl.expected.wgsl
@@ -1,10 +1,10 @@
struct Inner {
f : f32;
-};
+}
struct S {
inner : Inner;
-};
+}
[[group(0), binding(0)]] var<storage, read> in : S;
diff --git a/test/buffer/uniform/dynamic_index/read.wgsl.expected.wgsl b/test/buffer/uniform/dynamic_index/read.wgsl.expected.wgsl
index b5279f6..0dc8fdf 100644
--- a/test/buffer/uniform/dynamic_index/read.wgsl.expected.wgsl
+++ b/test/buffer/uniform/dynamic_index/read.wgsl.expected.wgsl
@@ -12,11 +12,11 @@
j : mat3x2<f32>;
[[align(16)]]
k : [[stride(16)]] array<vec4<i32>, 4>;
-};
+}
struct S {
arr : array<Inner, 8>;
-};
+}
[[binding(0), group(0)]] var<uniform> s : S;
diff --git a/test/buffer/uniform/static_index/read.wgsl.expected.wgsl b/test/buffer/uniform/static_index/read.wgsl.expected.wgsl
index 99c50f1..f43ae3b 100644
--- a/test/buffer/uniform/static_index/read.wgsl.expected.wgsl
+++ b/test/buffer/uniform/static_index/read.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct Inner {
x : i32;
-};
+}
struct S {
a : vec3<i32>;
@@ -17,7 +17,7 @@
k : Inner;
[[align(16)]]
l : [[stride(16)]] array<Inner, 4>;
-};
+}
[[binding(0), group(0)]] var<uniform> s : S;
diff --git a/test/buffer/uniform/types/struct.wgsl.expected.wgsl b/test/buffer/uniform/types/struct.wgsl.expected.wgsl
index fed4de3..0e74bf8 100644
--- a/test/buffer/uniform/types/struct.wgsl.expected.wgsl
+++ b/test/buffer/uniform/types/struct.wgsl.expected.wgsl
@@ -1,10 +1,10 @@
struct Inner {
f : f32;
-};
+}
struct S {
inner : Inner;
-};
+}
[[group(0), binding(0)]] var<uniform> u : S;
diff --git a/test/bug/chromium/1251009.wgsl.expected.wgsl b/test/bug/chromium/1251009.wgsl.expected.wgsl
index 5de6e50..c82715d 100644
--- a/test/bug/chromium/1251009.wgsl.expected.wgsl
+++ b/test/bug/chromium/1251009.wgsl.expected.wgsl
@@ -3,14 +3,14 @@
vertex_index : u32;
[[location(0)]]
loc0 : i32;
-};
+}
struct VertexInputs1 {
[[location(2)]]
loc1 : u32;
[[location(3)]]
loc3 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main(inputs0 : VertexInputs0, [[location(1)]] loc1 : u32, [[builtin(instance_index)]] instance_index : u32, inputs1 : VertexInputs1) -> [[builtin(position)]] vec4<f32> {
diff --git a/test/bug/chromium/1273230.wgsl.expected.wgsl b/test/bug/chromium/1273230.wgsl.expected.wgsl
index 4e2d55b..4708e0b 100644
--- a/test/bug/chromium/1273230.wgsl.expected.wgsl
+++ b/test/bug/chromium/1273230.wgsl.expected.wgsl
@@ -36,7 +36,7 @@
pad2 : u32;
bbMin : vec3<f32>;
bbMax : vec3<f32>;
-};
+}
struct Dbg {
offsetCounter : atomic<u32>;
@@ -51,27 +51,27 @@
value_f32_1 : f32;
value_f32_2 : f32;
value_f32_3 : f32;
-};
+}
struct F32s {
values : [[stride(4)]] array<f32>;
-};
+}
struct U32s {
values : [[stride(4)]] array<u32>;
-};
+}
struct I32s {
values : [[stride(4)]] array<i32>;
-};
+}
struct AU32s {
values : [[stride(4)]] array<atomic<u32>>;
-};
+}
struct AI32s {
values : [[stride(4)]] array<atomic<i32>>;
-};
+}
[[binding(0), group(0)]] var<uniform> uniforms : Uniforms;
diff --git a/test/bug/chromium/1273451.wgsl.expected.wgsl b/test/bug/chromium/1273451.wgsl.expected.wgsl
index 2289c10..d12f298 100644
--- a/test/bug/chromium/1273451.wgsl.expected.wgsl
+++ b/test/bug/chromium/1273451.wgsl.expected.wgsl
@@ -1,10 +1,10 @@
struct A {
a : i32;
-};
+}
struct B {
b : i32;
-};
+}
fn f(a : A) -> B {
return B();
diff --git a/test/bug/dawn/947.wgsl.expected.wgsl b/test/bug/dawn/947.wgsl.expected.wgsl
index b417862..a7e4f69 100644
--- a/test/bug/dawn/947.wgsl.expected.wgsl
+++ b/test/bug/dawn/947.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct Uniforms {
u_scale : vec2<f32>;
u_offset : vec2<f32>;
-};
+}
[[binding(0), group(0)]] var<uniform> uniforms : Uniforms;
@@ -10,7 +10,7 @@
texcoords : vec2<f32>;
[[builtin(position)]]
position : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn vs_main([[builtin(vertex_index)]] VertexIndex : u32) -> VertexOutputs {
diff --git a/test/bug/fxc/dyn_array_idx/read/function.wgsl.expected.wgsl b/test/bug/fxc/dyn_array_idx/read/function.wgsl.expected.wgsl
index 85f665b..9487d56 100644
--- a/test/bug/fxc/dyn_array_idx/read/function.wgsl.expected.wgsl
+++ b/test/bug/fxc/dyn_array_idx/read/function.wgsl.expected.wgsl
@@ -1,16 +1,16 @@
struct UBO {
dynamic_idx : i32;
-};
+}
[[group(0), binding(0)]] var<uniform> ubo : UBO;
struct S {
data : array<i32, 64>;
-};
+}
struct Result {
out : i32;
-};
+}
[[group(0), binding(1)]] var<storage, read_write> result : Result;
diff --git a/test/bug/fxc/dyn_array_idx/read/private.wgsl.expected.wgsl b/test/bug/fxc/dyn_array_idx/read/private.wgsl.expected.wgsl
index 4a1fecc..352b5e2 100644
--- a/test/bug/fxc/dyn_array_idx/read/private.wgsl.expected.wgsl
+++ b/test/bug/fxc/dyn_array_idx/read/private.wgsl.expected.wgsl
@@ -1,16 +1,16 @@
struct UBO {
dynamic_idx : i32;
-};
+}
[[group(0), binding(0)]] var<uniform> ubo : UBO;
struct S {
data : array<i32, 64>;
-};
+}
struct Result {
out : i32;
-};
+}
[[group(0), binding(1)]] var<storage, read_write> result : Result;
diff --git a/test/bug/fxc/dyn_array_idx/read/storage.wgsl.expected.wgsl b/test/bug/fxc/dyn_array_idx/read/storage.wgsl.expected.wgsl
index 76cf15c..5445952 100644
--- a/test/bug/fxc/dyn_array_idx/read/storage.wgsl.expected.wgsl
+++ b/test/bug/fxc/dyn_array_idx/read/storage.wgsl.expected.wgsl
@@ -1,18 +1,18 @@
struct UBO {
dynamic_idx : i32;
-};
+}
[[group(0), binding(0)]] var<uniform> ubo : UBO;
struct Result {
out : i32;
-};
+}
[[group(0), binding(2)]] var<storage, read_write> result : Result;
struct SSBO {
data : array<i32, 4>;
-};
+}
[[group(0), binding(1)]] var<storage, read_write> ssbo : SSBO;
diff --git a/test/bug/fxc/dyn_array_idx/read/uniform.wgsl.expected.wgsl b/test/bug/fxc/dyn_array_idx/read/uniform.wgsl.expected.wgsl
index cd2664a..d0f1e72 100644
--- a/test/bug/fxc/dyn_array_idx/read/uniform.wgsl.expected.wgsl
+++ b/test/bug/fxc/dyn_array_idx/read/uniform.wgsl.expected.wgsl
@@ -1,13 +1,13 @@
struct UBO {
data : [[stride(16)]] array<i32, 4>;
dynamic_idx : i32;
-};
+}
[[group(0), binding(0)]] var<uniform> ubo : UBO;
struct Result {
out : i32;
-};
+}
[[group(0), binding(2)]] var<storage, read_write> result : Result;
diff --git a/test/bug/fxc/dyn_array_idx/read/workgroup.wgsl.expected.wgsl b/test/bug/fxc/dyn_array_idx/read/workgroup.wgsl.expected.wgsl
index edca39d..80a812d 100644
--- a/test/bug/fxc/dyn_array_idx/read/workgroup.wgsl.expected.wgsl
+++ b/test/bug/fxc/dyn_array_idx/read/workgroup.wgsl.expected.wgsl
@@ -1,16 +1,16 @@
struct UBO {
dynamic_idx : i32;
-};
+}
[[group(0), binding(0)]] var<uniform> ubo : UBO;
struct S {
data : array<i32, 64>;
-};
+}
struct Result {
out : i32;
-};
+}
[[group(0), binding(1)]] var<storage, read_write> result : Result;
diff --git a/test/bug/fxc/dyn_array_idx/write/function.wgsl.expected.wgsl b/test/bug/fxc/dyn_array_idx/write/function.wgsl.expected.wgsl
index dc84c69..18b069c 100644
--- a/test/bug/fxc/dyn_array_idx/write/function.wgsl.expected.wgsl
+++ b/test/bug/fxc/dyn_array_idx/write/function.wgsl.expected.wgsl
@@ -1,16 +1,16 @@
struct UBO {
dynamic_idx : i32;
-};
+}
[[group(0), binding(0)]] var<uniform> ubo : UBO;
struct S {
data : array<i32, 64>;
-};
+}
struct Result {
out : i32;
-};
+}
[[group(0), binding(1)]] var<storage, read_write> result : Result;
diff --git a/test/bug/fxc/dyn_array_idx/write/function_via_param.wgsl.expected.wgsl b/test/bug/fxc/dyn_array_idx/write/function_via_param.wgsl.expected.wgsl
index d560432..57c8a26 100644
--- a/test/bug/fxc/dyn_array_idx/write/function_via_param.wgsl.expected.wgsl
+++ b/test/bug/fxc/dyn_array_idx/write/function_via_param.wgsl.expected.wgsl
@@ -1,16 +1,16 @@
struct UBO {
dynamic_idx : i32;
-};
+}
[[group(0), binding(0)]] var<uniform> ubo : UBO;
struct S {
data : array<i32, 64>;
-};
+}
struct Result {
out : i32;
-};
+}
[[group(0), binding(1)]] var<storage, read_write> result : Result;
diff --git a/test/bug/fxc/dyn_array_idx/write/private.wgsl.expected.wgsl b/test/bug/fxc/dyn_array_idx/write/private.wgsl.expected.wgsl
index 36ef547..7544006 100644
--- a/test/bug/fxc/dyn_array_idx/write/private.wgsl.expected.wgsl
+++ b/test/bug/fxc/dyn_array_idx/write/private.wgsl.expected.wgsl
@@ -1,16 +1,16 @@
struct UBO {
dynamic_idx : i32;
-};
+}
[[group(0), binding(0)]] var<uniform> ubo : UBO;
struct S {
data : array<i32, 64>;
-};
+}
struct Result {
out : i32;
-};
+}
[[group(0), binding(1)]] var<storage, read_write> result : Result;
diff --git a/test/bug/fxc/dyn_array_idx/write/private_via_param.wgsl.expected.wgsl b/test/bug/fxc/dyn_array_idx/write/private_via_param.wgsl.expected.wgsl
index 5a820ac..fd99ff2 100644
--- a/test/bug/fxc/dyn_array_idx/write/private_via_param.wgsl.expected.wgsl
+++ b/test/bug/fxc/dyn_array_idx/write/private_via_param.wgsl.expected.wgsl
@@ -1,16 +1,16 @@
struct UBO {
dynamic_idx : i32;
-};
+}
[[group(0), binding(0)]] var<uniform> ubo : UBO;
struct S {
data : array<i32, 64>;
-};
+}
struct Result {
out : i32;
-};
+}
[[group(0), binding(1)]] var<storage, read_write> result : Result;
diff --git a/test/bug/fxc/dyn_array_idx/write/storage.wgsl.expected.wgsl b/test/bug/fxc/dyn_array_idx/write/storage.wgsl.expected.wgsl
index 9e51589..b3d0217 100644
--- a/test/bug/fxc/dyn_array_idx/write/storage.wgsl.expected.wgsl
+++ b/test/bug/fxc/dyn_array_idx/write/storage.wgsl.expected.wgsl
@@ -1,18 +1,18 @@
struct UBO {
dynamic_idx : i32;
-};
+}
[[group(0), binding(0)]] var<uniform> ubo : UBO;
struct Result {
out : i32;
-};
+}
[[group(0), binding(2)]] var<storage, read_write> result : Result;
struct SSBO {
data : array<i32, 4>;
-};
+}
[[group(0), binding(1)]] var<storage, read_write> ssbo : SSBO;
diff --git a/test/bug/fxc/dyn_array_idx/write/workgroup.wgsl.expected.wgsl b/test/bug/fxc/dyn_array_idx/write/workgroup.wgsl.expected.wgsl
index 4874b2a..7c122d1 100644
--- a/test/bug/fxc/dyn_array_idx/write/workgroup.wgsl.expected.wgsl
+++ b/test/bug/fxc/dyn_array_idx/write/workgroup.wgsl.expected.wgsl
@@ -1,16 +1,16 @@
struct UBO {
dynamic_idx : i32;
-};
+}
[[group(0), binding(0)]] var<uniform> ubo : UBO;
struct S {
data : array<i32, 64>;
-};
+}
struct Result {
out : i32;
-};
+}
[[group(0), binding(1)]] var<storage, read_write> result : Result;
diff --git a/test/bug/fxc/indexed_assign_to_array_in_struct/1206.wgsl.expected.wgsl b/test/bug/fxc/indexed_assign_to_array_in_struct/1206.wgsl.expected.wgsl
index 239e359..818e3b4 100644
--- a/test/bug/fxc/indexed_assign_to_array_in_struct/1206.wgsl.expected.wgsl
+++ b/test/bug/fxc/indexed_assign_to_array_in_struct/1206.wgsl.expected.wgsl
@@ -1,17 +1,17 @@
struct Simulation {
i : u32;
-};
+}
struct Particle {
position : array<vec3<f32>, 8>;
lifetime : f32;
color : vec4<f32>;
velocity : vec3<f32>;
-};
+}
struct Particles {
p : array<Particle>;
-};
+}
[[group(1), binding(3)]] var<storage, read> particles : Particles;
diff --git a/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_scalar_x.wgsl.expected.wgsl b/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_scalar_x.wgsl.expected.wgsl
index c201538..3b201de 100644
--- a/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_scalar_x.wgsl.expected.wgsl
+++ b/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_scalar_x.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_scalar_xy.wgsl.expected.wgsl b/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_scalar_xy.wgsl.expected.wgsl
index 11e2eae..8b37003 100644
--- a/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_scalar_xy.wgsl.expected.wgsl
+++ b/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_scalar_xy.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_scalar_y.wgsl.expected.wgsl b/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_scalar_y.wgsl.expected.wgsl
index d8c4481..031f689 100644
--- a/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_scalar_y.wgsl.expected.wgsl
+++ b/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_scalar_y.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_vector.wgsl.expected.wgsl b/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_vector.wgsl.expected.wgsl
index ffabd7b..4dc3783 100644
--- a/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_vector.wgsl.expected.wgsl
+++ b/test/bug/fxc/matrix_assignment_dynamic_index/local_assign_vector.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_scalar_x.wgsl.expected.wgsl b/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_scalar_x.wgsl.expected.wgsl
index 86f180d..bc312b2 100644
--- a/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_scalar_x.wgsl.expected.wgsl
+++ b/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_scalar_x.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_scalar_xy.wgsl.expected.wgsl b/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_scalar_xy.wgsl.expected.wgsl
index 99e8629..f706b60 100644
--- a/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_scalar_xy.wgsl.expected.wgsl
+++ b/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_scalar_xy.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_scalar_y.wgsl.expected.wgsl b/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_scalar_y.wgsl.expected.wgsl
index d8c4481..031f689 100644
--- a/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_scalar_y.wgsl.expected.wgsl
+++ b/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_scalar_y.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_vector.wgsl.expected.wgsl b/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_vector.wgsl.expected.wgsl
index 856e7d3..b1c7255 100644
--- a/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_vector.wgsl.expected.wgsl
+++ b/test/bug/fxc/matrix_assignment_dynamic_index/module_assign_vector.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/bug/tint/1046.wgsl.expected.wgsl b/test/bug/tint/1046.wgsl.expected.wgsl
index 310472c..d67947b 100644
--- a/test/bug/tint/1046.wgsl.expected.wgsl
+++ b/test/bug/tint/1046.wgsl.expected.wgsl
@@ -1,10 +1,10 @@
struct PointLight {
position : vec4<f32>;
-};
+}
struct PointLights {
values : [[stride(16)]] array<PointLight>;
-};
+}
struct Uniforms {
worldView : mat4x4<f32>;
@@ -12,7 +12,7 @@
numPointLights : u32;
color_source : u32;
color : vec4<f32>;
-};
+}
[[binding(0), group(0)]] var<uniform> uniforms : Uniforms;
@@ -33,12 +33,12 @@
uv : vec2<f32>;
[[location(3)]]
color : vec4<f32>;
-};
+}
struct FragmentOutput {
[[location(0)]]
color : vec4<f32>;
-};
+}
fn getColor(fragment : FragmentInput) -> vec4<f32> {
var color : vec4<f32>;
diff --git a/test/bug/tint/1076.wgsl.expected.wgsl b/test/bug/tint/1076.wgsl.expected.wgsl
index 311d625..8a91c08 100644
--- a/test/bug/tint/1076.wgsl.expected.wgsl
+++ b/test/bug/tint/1076.wgsl.expected.wgsl
@@ -3,7 +3,7 @@
a : f32;
[[builtin(sample_mask)]]
mask : u32;
-};
+}
[[stage(fragment)]]
fn main(in : FragIn, [[location(1)]] b : f32) -> FragIn {
diff --git a/test/bug/tint/1088.spvasm.expected.wgsl b/test/bug/tint/1088.spvasm.expected.wgsl
index d5d5076..d31ca16 100644
--- a/test/bug/tint/1088.spvasm.expected.wgsl
+++ b/test/bug/tint/1088.spvasm.expected.wgsl
@@ -9,7 +9,7 @@
padding : u32;
test2 : Arr;
test : Arr_1;
-};
+}
var<private> position : vec3<f32>;
@@ -53,7 +53,7 @@
gl_Position : vec4<f32>;
[[location(0)]]
vUV_1 : vec2<f32>;
-};
+}
[[stage(vertex)]]
fn main([[location(0)]] position_param : vec3<f32>, [[location(2)]] uv_param : vec2<f32>, [[location(1)]] normal_param : vec3<f32>) -> main_out {
diff --git a/test/bug/tint/1113.wgsl.expected.wgsl b/test/bug/tint/1113.wgsl.expected.wgsl
index f8db09d..ce45595 100644
--- a/test/bug/tint/1113.wgsl.expected.wgsl
+++ b/test/bug/tint/1113.wgsl.expected.wgsl
@@ -5,7 +5,7 @@
pad2 : u32;
bbMin : vec3<f32>;
bbMax : vec3<f32>;
-};
+}
struct Dbg {
offsetCounter : atomic<u32>;
@@ -20,27 +20,27 @@
value_f32_1 : f32;
value_f32_2 : f32;
value_f32_3 : f32;
-};
+}
struct F32s {
values : [[stride(4)]] array<f32>;
-};
+}
struct U32s {
values : [[stride(4)]] array<u32>;
-};
+}
struct I32s {
values : [[stride(4)]] array<i32>;
-};
+}
struct AU32s {
values : [[stride(4)]] array<atomic<u32>>;
-};
+}
struct AI32s {
values : [[stride(4)]] array<atomic<i32>>;
-};
+}
[[binding(0), group(0)]] var<uniform> uniforms : Uniforms;
diff --git a/test/bug/tint/1121.wgsl.expected.wgsl b/test/bug/tint/1121.wgsl.expected.wgsl
index 4f28ea4..2620967 100644
--- a/test/bug/tint/1121.wgsl.expected.wgsl
+++ b/test/bug/tint/1121.wgsl.expected.wgsl
@@ -2,22 +2,22 @@
position : vec4<f32>;
color : vec3<f32>;
radius : f32;
-};
+}
struct LightsBuffer {
lights : array<LightData>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> lightsBuffer : LightsBuffer;
struct TileLightIdData {
count : atomic<u32>;
lightId : array<u32, 64>;
-};
+}
struct Tiles {
data : array<TileLightIdData, 4>;
-};
+}
[[group(1), binding(0)]] var<storage, read_write> tileLightId : Tiles;
@@ -28,7 +28,7 @@
tileCountY : u32;
numTileLightSlot : u32;
tileSize : u32;
-};
+}
[[group(2), binding(0)]] var<uniform> config : Config;
@@ -38,7 +38,7 @@
viewMatrix : mat4x4<f32>;
projectionMatrix : mat4x4<f32>;
fullScreenSize : vec4<f32>;
-};
+}
[[group(3), binding(0)]] var<uniform> uniforms : Uniforms;
diff --git a/test/bug/tint/1136.wgsl.expected.wgsl b/test/bug/tint/1136.wgsl.expected.wgsl
index b23fded..7bf2195 100644
--- a/test/bug/tint/1136.wgsl.expected.wgsl
+++ b/test/bug/tint/1136.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct Buffer {
data : u32;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> buffer : Buffer;
diff --git a/test/bug/tint/221.wgsl.expected.wgsl b/test/bug/tint/221.wgsl.expected.wgsl
index de43263..6173b61 100644
--- a/test/bug/tint/221.wgsl.expected.wgsl
+++ b/test/bug/tint/221.wgsl.expected.wgsl
@@ -3,7 +3,7 @@
struct Buf {
count : u32;
data : Arr;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> b : Buf;
diff --git a/test/bug/tint/294.wgsl.expected.wgsl b/test/bug/tint/294.wgsl.expected.wgsl
index 7cb8698..f4c1358 100644
--- a/test/bug/tint/294.wgsl.expected.wgsl
+++ b/test/bug/tint/294.wgsl.expected.wgsl
@@ -1,10 +1,10 @@
struct Light {
position : vec3<f32>;
colour : vec3<f32>;
-};
+}
struct Lights {
light : [[stride(32)]] array<Light>;
-};
+}
[[group(0), binding(1)]] var<storage, read> lights : Lights;
diff --git a/test/bug/tint/369.wgsl.expected.wgsl b/test/bug/tint/369.wgsl.expected.wgsl
index 7f45473..f4192a7 100644
--- a/test/bug/tint/369.wgsl.expected.wgsl
+++ b/test/bug/tint/369.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
m : mat2x2<f32>;
-};
+}
[[group(0), binding(0)]] var<storage> SSBO : S;
diff --git a/test/bug/tint/403.wgsl.expected.wgsl b/test/bug/tint/403.wgsl.expected.wgsl
index 6e1ae44..2fa1f18 100644
--- a/test/bug/tint/403.wgsl.expected.wgsl
+++ b/test/bug/tint/403.wgsl.expected.wgsl
@@ -1,10 +1,10 @@
struct vertexUniformBuffer1 {
transform1 : mat2x2<f32>;
-};
+}
struct vertexUniformBuffer2 {
transform2 : mat2x2<f32>;
-};
+}
[[group(0), binding(0)]] var<uniform> x_20 : vertexUniformBuffer1;
diff --git a/test/bug/tint/492.wgsl.expected.wgsl b/test/bug/tint/492.wgsl.expected.wgsl
index 3b56c94..6563f70 100644
--- a/test/bug/tint/492.wgsl.expected.wgsl
+++ b/test/bug/tint/492.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : i32;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> buf : S;
diff --git a/test/bug/tint/534.wgsl.expected.wgsl b/test/bug/tint/534.wgsl.expected.wgsl
index 7604745..bc45f8a 100644
--- a/test/bug/tint/534.wgsl.expected.wgsl
+++ b/test/bug/tint/534.wgsl.expected.wgsl
@@ -3,11 +3,11 @@
isFloat16 : u32;
isRGB10A2Unorm : u32;
channelCount : u32;
-};
+}
struct OutputBuf {
result : [[stride(4)]] array<u32>;
-};
+}
[[group(0), binding(0)]] var src : texture_2d<f32>;
diff --git a/test/bug/tint/744.wgsl.expected.wgsl b/test/bug/tint/744.wgsl.expected.wgsl
index 27c747d..001dd88 100644
--- a/test/bug/tint/744.wgsl.expected.wgsl
+++ b/test/bug/tint/744.wgsl.expected.wgsl
@@ -2,11 +2,11 @@
aShape : vec2<u32>;
bShape : vec2<u32>;
outShape : vec2<u32>;
-};
+}
struct Matrix {
numbers : array<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> firstMatrix : Matrix;
diff --git a/test/bug/tint/749.spvasm.expected.wgsl b/test/bug/tint/749.spvasm.expected.wgsl
index 741a6ca..59e1920 100644
--- a/test/bug/tint/749.spvasm.expected.wgsl
+++ b/test/bug/tint/749.spvasm.expected.wgsl
@@ -1,10 +1,10 @@
struct QuicksortObject {
numbers : array<i32, 10u>;
-};
+}
struct buf0 {
resolution : vec2<f32>;
-};
+}
var<private> obj : QuicksortObject;
@@ -1476,7 +1476,7 @@
struct main_out {
[[location(0)]]
x_GLF_color_1 : vec4<f32>;
-};
+}
[[stage(fragment)]]
fn main([[builtin(position)]] gl_FragCoord_param : vec4<f32>) -> main_out {
diff --git a/test/bug/tint/757.wgsl.expected.wgsl b/test/bug/tint/757.wgsl.expected.wgsl
index 2407fea..b19bb0c 100644
--- a/test/bug/tint/757.wgsl.expected.wgsl
+++ b/test/bug/tint/757.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct Constants {
level : i32;
-};
+}
[[group(0), binding(0)]] var<uniform> constants : Constants;
@@ -8,7 +8,7 @@
struct Result {
values : [[stride(4)]] array<f32>;
-};
+}
[[group(0), binding(3)]] var<storage, read_write> result : Result;
diff --git a/test/bug/tint/824.wgsl.expected.wgsl b/test/bug/tint/824.wgsl.expected.wgsl
index 6d051de..2c795fe 100644
--- a/test/bug/tint/824.wgsl.expected.wgsl
+++ b/test/bug/tint/824.wgsl.expected.wgsl
@@ -3,7 +3,7 @@
Position : vec4<f32>;
[[location(0)]]
color : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main([[builtin(vertex_index)]] VertexIndex : u32, [[builtin(instance_index)]] InstanceIndex : u32) -> Output {
diff --git a/test/bug/tint/827.wgsl.expected.wgsl b/test/bug/tint/827.wgsl.expected.wgsl
index 48baf0c..af06757 100644
--- a/test/bug/tint/827.wgsl.expected.wgsl
+++ b/test/bug/tint/827.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct Result {
values : array<f32>;
-};
+}
let width : u32 = 128u;
diff --git a/test/bug/tint/870.spvasm.expected.wgsl b/test/bug/tint/870.spvasm.expected.wgsl
index 9d03c58..73a04d4 100644
--- a/test/bug/tint/870.spvasm.expected.wgsl
+++ b/test/bug/tint/870.spvasm.expected.wgsl
@@ -5,11 +5,11 @@
offset : vec4<f32>;
essence : i32;
orientation : Arr;
-};
+}
struct x_B4_BuildInformation {
passthru : sspp962805860buildInformationS;
-};
+}
[[group(0), binding(2)]] var<storage, read> sspp962805860buildInformation : x_B4_BuildInformation;
diff --git a/test/bug/tint/913.wgsl.expected.wgsl b/test/bug/tint/913.wgsl.expected.wgsl
index ecc1c2b..322d0b1 100644
--- a/test/bug/tint/913.wgsl.expected.wgsl
+++ b/test/bug/tint/913.wgsl.expected.wgsl
@@ -4,11 +4,11 @@
srcCopyOrigin : vec2<u32>;
dstCopyOrigin : vec2<u32>;
copySize : vec2<u32>;
-};
+}
struct OutputBuf {
result : array<u32>;
-};
+}
[[group(0), binding(0)]] var src : texture_2d<f32>;
diff --git a/test/bug/tint/914.wgsl.expected.wgsl b/test/bug/tint/914.wgsl.expected.wgsl
index 6b42dac..bfa7c61 100644
--- a/test/bug/tint/914.wgsl.expected.wgsl
+++ b/test/bug/tint/914.wgsl.expected.wgsl
@@ -2,11 +2,11 @@
dimAOuter : u32;
dimInner : u32;
dimBOuter : u32;
-};
+}
struct Matrix {
numbers : array<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> firstMatrix : Matrix;
diff --git a/test/bug/tint/922.wgsl.expected.wgsl b/test/bug/tint/922.wgsl.expected.wgsl
index 6e637c7..82929da 100644
--- a/test/bug/tint/922.wgsl.expected.wgsl
+++ b/test/bug/tint/922.wgsl.expected.wgsl
@@ -3,31 +3,31 @@
my : vec4<f32>;
mz : vec4<f32>;
mw : vec4<f32>;
-};
+}
struct Mat4x3_ {
mx : vec4<f32>;
my : vec4<f32>;
mz : vec4<f32>;
-};
+}
struct Mat4x2_ {
mx : vec4<f32>;
my : vec4<f32>;
-};
+}
struct ub_SceneParams {
u_Projection : Mat4x4_;
-};
+}
struct ub_MaterialParams {
u_TexMtx : [[stride(32)]] array<Mat4x2_, 1>;
u_Misc0_ : vec4<f32>;
-};
+}
struct ub_PacketParams {
u_PosMtx : [[stride(48)]] array<Mat4x3_, 32>;
-};
+}
struct VertexOutput {
[[location(0)]]
@@ -36,7 +36,7 @@
v_TexCoord : vec2<f32>;
[[builtin(position)]]
member : vec4<f32>;
-};
+}
[[group(0), binding(0)]] var<uniform> global : ub_SceneParams;
diff --git a/test/bug/tint/926.wgsl.expected.wgsl b/test/bug/tint/926.wgsl.expected.wgsl
index b21aa73..978979b 100644
--- a/test/bug/tint/926.wgsl.expected.wgsl
+++ b/test/bug/tint/926.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct DrawIndirectArgs {
vertexCount : atomic<u32>;
-};
+}
[[group(0), binding(5)]] var<storage, read_write> drawOut : DrawIndirectArgs;
diff --git a/test/bug/tint/942.wgsl.expected.wgsl b/test/bug/tint/942.wgsl.expected.wgsl
index 327b5aa..827326f 100644
--- a/test/bug/tint/942.wgsl.expected.wgsl
+++ b/test/bug/tint/942.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct Params {
filterDim : u32;
blockDim : u32;
-};
+}
[[group(0), binding(0)]] var samp : sampler;
@@ -13,7 +13,7 @@
struct Flip {
value : u32;
-};
+}
[[group(1), binding(3)]] var<uniform> flip : Flip;
diff --git a/test/bug/tint/943.spvasm.expected.wgsl b/test/bug/tint/943.spvasm.expected.wgsl
index ab6b376..04699dd 100644
--- a/test/bug/tint/943.spvasm.expected.wgsl
+++ b/test/bug/tint/943.spvasm.expected.wgsl
@@ -12,7 +12,7 @@
[[size(4)]]
padding_3 : u32;
outShapeStrides : vec2<i32>;
-};
+}
type RTArr = [[stride(4)]] array<f32>;
@@ -20,17 +20,17 @@
struct ssbOut {
result : RTArr_1;
-};
+}
type RTArr_2 = [[stride(4)]] array<f32>;
struct ssbA {
A : RTArr_1;
-};
+}
struct ssbB {
B : RTArr_1;
-};
+}
var<private> dimAOuter_1 : i32;
diff --git a/test/bug/tint/948.wgsl.expected.wgsl b/test/bug/tint/948.wgsl.expected.wgsl
index 4fe5b0c..d6a66db 100644
--- a/test/bug/tint/948.wgsl.expected.wgsl
+++ b/test/bug/tint/948.wgsl.expected.wgsl
@@ -9,7 +9,7 @@
stageScale : f32;
spriteCount : f32;
colorMul : vec3<f32>;
-};
+}
[[group(2), binding(9)]] var<uniform> x_20 : LeftOver;
@@ -213,7 +213,7 @@
struct main_out {
[[location(0)]]
glFragColor_1 : vec4<f32>;
-};
+}
[[stage(fragment)]]
fn main([[location(2)]] tUV_param : vec2<f32>, [[location(5)]] tileID_1_param : vec2<f32>, [[location(4)]] levelUnits_param : vec2<f32>, [[location(3)]] stageUnits_1_param : vec2<f32>, [[location(0)]] vPosition_param : vec3<f32>, [[location(1)]] vUV_param : vec2<f32>) -> main_out {
diff --git a/test/bug/tint/949.wgsl.expected.wgsl b/test/bug/tint/949.wgsl.expected.wgsl
index 68602e1..8bbc807 100644
--- a/test/bug/tint/949.wgsl.expected.wgsl
+++ b/test/bug/tint/949.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct lightingInfo {
diffuse : vec3<f32>;
specular : vec3<f32>;
-};
+}
struct LeftOver {
u_World : mat4x4<f32>;
@@ -15,7 +15,7 @@
[[size(4)]]
padding_1 : u32;
tangentSpaceParameter0 : vec2<f32>;
-};
+}
struct Light0 {
vLightData : vec4<f32>;
@@ -26,7 +26,7 @@
padding_2 : u32;
shadowsInfo : vec4<f32>;
depthValues : vec2<f32>;
-};
+}
var<private> u_Float : f32;
@@ -438,7 +438,7 @@
struct main_out {
[[location(0)]]
glFragColor_1 : vec4<f32>;
-};
+}
[[stage(fragment)]]
fn main([[location(1)]] vMainuv_param : vec2<f32>, [[location(0)]] v_output1_param : vec4<f32>, [[builtin(front_facing)]] gl_FrontFacing_param : bool, [[location(3)]] v_uv_param : vec2<f32>, [[location(2)]] v_output2_param : vec4<f32>) -> main_out {
diff --git a/test/bug/tint/951.spvasm.expected.wgsl b/test/bug/tint/951.spvasm.expected.wgsl
index 2440aa7..f80adea 100644
--- a/test/bug/tint/951.spvasm.expected.wgsl
+++ b/test/bug/tint/951.spvasm.expected.wgsl
@@ -4,11 +4,11 @@
struct ssbOut {
result : RTArr_1;
-};
+}
struct ssbA {
A : RTArr_1;
-};
+}
struct Uniforms {
NAN : f32;
@@ -16,7 +16,7 @@
outShape : i32;
outShapeStrides : i32;
size : i32;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> x_16 : ssbOut;
diff --git a/test/bug/tint/959.wgsl.expected.wgsl b/test/bug/tint/959.wgsl.expected.wgsl
index 6a440f7..4e4ecf0 100644
--- a/test/bug/tint/959.wgsl.expected.wgsl
+++ b/test/bug/tint/959.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : f32;
-};
+}
[[group(0), binding(0)]] var<storage> b0 : S;
diff --git a/test/bug/tint/977.spvasm.expected.wgsl b/test/bug/tint/977.spvasm.expected.wgsl
index 711260b..69bc7aa 100644
--- a/test/bug/tint/977.spvasm.expected.wgsl
+++ b/test/bug/tint/977.spvasm.expected.wgsl
@@ -4,23 +4,23 @@
struct ResultMatrix {
numbers : RTArr_1;
-};
+}
type RTArr_2 = [[stride(4)]] array<f32>;
struct FirstMatrix {
numbers : RTArr_1;
-};
+}
struct SecondMatrix {
numbers : RTArr_1;
-};
+}
struct Uniforms {
NAN : f32;
sizeA : i32;
sizeB : i32;
-};
+}
var<private> gl_GlobalInvocationID : vec3<u32>;
diff --git a/test/bug/tint/978.wgsl.expected.wgsl b/test/bug/tint/978.wgsl.expected.wgsl
index a912004..b73a26e 100644
--- a/test/bug/tint/978.wgsl.expected.wgsl
+++ b/test/bug/tint/978.wgsl.expected.wgsl
@@ -1,12 +1,12 @@
struct FragmentInput {
[[location(2)]]
vUv : vec2<f32>;
-};
+}
struct FragmentOutput {
[[location(0)]]
color : vec4<f32>;
-};
+}
[[binding(5), group(1)]] var depthMap : texture_depth_2d;
diff --git a/test/bug/tint/980.wgsl.expected.wgsl b/test/bug/tint/980.wgsl.expected.wgsl
index 1af06ba..b74a7cb 100644
--- a/test/bug/tint/980.wgsl.expected.wgsl
+++ b/test/bug/tint/980.wgsl.expected.wgsl
@@ -7,7 +7,7 @@
struct S {
v : vec3<f32>;
i : u32;
-};
+}
[[binding(0), group(0)]] var<storage, read_write> io : S;
diff --git a/test/bug/tint/993.wgsl.expected.wgsl b/test/bug/tint/993.wgsl.expected.wgsl
index 588ebed..12eb2ae 100644
--- a/test/bug/tint/993.wgsl.expected.wgsl
+++ b/test/bug/tint/993.wgsl.expected.wgsl
@@ -1,18 +1,18 @@
struct Constants {
zero : u32;
-};
+}
[[group(1), binding(0)]] var<uniform> constants : Constants;
struct Result {
value : u32;
-};
+}
[[group(1), binding(1)]] var<storage, write> result : Result;
struct TestData {
data : array<atomic<i32>, 3>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> s : TestData;
diff --git a/test/bug/tint/998.wgsl.expected.wgsl b/test/bug/tint/998.wgsl.expected.wgsl
index f6e3471..e7abd6d 100644
--- a/test/bug/tint/998.wgsl.expected.wgsl
+++ b/test/bug/tint/998.wgsl.expected.wgsl
@@ -1,18 +1,18 @@
struct Constants {
zero : u32;
-};
+}
[[group(1), binding(0)]] var<uniform> constants : Constants;
struct Result {
value : u32;
-};
+}
[[group(1), binding(1)]] var<storage, write> result : Result;
struct S {
data : array<u32, 3>;
-};
+}
var<private> s : S;
diff --git a/test/expressions/binary/mul/mat3x2-vec3/f32.wgsl.expected.wgsl b/test/expressions/binary/mul/mat3x2-vec3/f32.wgsl.expected.wgsl
index ae7c935..adb8e74 100644
--- a/test/expressions/binary/mul/mat3x2-vec3/f32.wgsl.expected.wgsl
+++ b/test/expressions/binary/mul/mat3x2-vec3/f32.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct S {
matrix : mat3x2<f32>;
vector : vec3<f32>;
-};
+}
[[group(0), binding(0)]] var<uniform> data : S;
diff --git a/test/expressions/binary/mul/mat3x3-vec3/f32.wgsl.expected.wgsl b/test/expressions/binary/mul/mat3x3-vec3/f32.wgsl.expected.wgsl
index 67be8b6..461d0c7 100644
--- a/test/expressions/binary/mul/mat3x3-vec3/f32.wgsl.expected.wgsl
+++ b/test/expressions/binary/mul/mat3x3-vec3/f32.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct S {
matrix : mat3x3<f32>;
vector : vec3<f32>;
-};
+}
[[group(0), binding(0)]] var<uniform> data : S;
diff --git a/test/expressions/binary/mul/vec3-mat3x3/f32.wgsl.expected.wgsl b/test/expressions/binary/mul/vec3-mat3x3/f32.wgsl.expected.wgsl
index 884e94c..10e087f 100644
--- a/test/expressions/binary/mul/vec3-mat3x3/f32.wgsl.expected.wgsl
+++ b/test/expressions/binary/mul/vec3-mat3x3/f32.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct S {
matrix : mat3x3<f32>;
vector : vec3<f32>;
-};
+}
[[group(0), binding(0)]] var<uniform> data : S;
diff --git a/test/expressions/binary/mul/vec3-mat4x3/f32.wgsl.expected.wgsl b/test/expressions/binary/mul/vec3-mat4x3/f32.wgsl.expected.wgsl
index 36c0fe4..223240f 100644
--- a/test/expressions/binary/mul/vec3-mat4x3/f32.wgsl.expected.wgsl
+++ b/test/expressions/binary/mul/vec3-mat4x3/f32.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct S {
matrix : mat4x3<f32>;
vector : vec3<f32>;
-};
+}
[[group(0), binding(0)]] var<uniform> data : S;
diff --git a/test/expressions/literals/-inf.spvasm.expected.wgsl b/test/expressions/literals/-inf.spvasm.expected.wgsl
index 3e916f6..60e7281 100644
--- a/test/expressions/literals/-inf.spvasm.expected.wgsl
+++ b/test/expressions/literals/-inf.spvasm.expected.wgsl
@@ -8,7 +8,7 @@
struct main_out {
[[location(0)]]
out_var_SV_TARGET_1 : vec4<f32>;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
diff --git a/test/expressions/literals/inf.spvasm.expected.wgsl b/test/expressions/literals/inf.spvasm.expected.wgsl
index c4dd750..0389b98 100644
--- a/test/expressions/literals/inf.spvasm.expected.wgsl
+++ b/test/expressions/literals/inf.spvasm.expected.wgsl
@@ -8,7 +8,7 @@
struct main_out {
[[location(0)]]
out_var_SV_TARGET_1 : vec4<f32>;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
diff --git a/test/expressions/literals/nan.spvasm.expected.wgsl b/test/expressions/literals/nan.spvasm.expected.wgsl
index a72149c..816c89e 100644
--- a/test/expressions/literals/nan.spvasm.expected.wgsl
+++ b/test/expressions/literals/nan.spvasm.expected.wgsl
@@ -8,7 +8,7 @@
struct main_out {
[[location(0)]]
out_var_SV_TARGET_1 : vec4<f32>;
-};
+}
[[stage(fragment)]]
fn main() -> main_out {
diff --git a/test/expressions/swizzle/read/packed_vec3/f32.wgsl.expected.wgsl b/test/expressions/swizzle/read/packed_vec3/f32.wgsl.expected.wgsl
index 6a0255b..727788b 100644
--- a/test/expressions/swizzle/read/packed_vec3/f32.wgsl.expected.wgsl
+++ b/test/expressions/swizzle/read/packed_vec3/f32.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
v : vec3<f32>;
-};
+}
[[group(0), binding(0)]] var<uniform> U : S;
diff --git a/test/expressions/swizzle/read/packed_vec3/i32.wgsl.expected.wgsl b/test/expressions/swizzle/read/packed_vec3/i32.wgsl.expected.wgsl
index 9220cb8..dffd20c9 100644
--- a/test/expressions/swizzle/read/packed_vec3/i32.wgsl.expected.wgsl
+++ b/test/expressions/swizzle/read/packed_vec3/i32.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
v : vec3<i32>;
-};
+}
[[group(0), binding(0)]] var<uniform> U : S;
diff --git a/test/expressions/swizzle/read/packed_vec3/u32.wgsl.expected.wgsl b/test/expressions/swizzle/read/packed_vec3/u32.wgsl.expected.wgsl
index e77660c..36bf160 100644
--- a/test/expressions/swizzle/read/packed_vec3/u32.wgsl.expected.wgsl
+++ b/test/expressions/swizzle/read/packed_vec3/u32.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
v : vec3<u32>;
-};
+}
[[group(0), binding(0)]] var<uniform> U : S;
diff --git a/test/expressions/swizzle/read/vec3/f32.wgsl.expected.wgsl b/test/expressions/swizzle/read/vec3/f32.wgsl.expected.wgsl
index cef93bb..b3862ad 100644
--- a/test/expressions/swizzle/read/vec3/f32.wgsl.expected.wgsl
+++ b/test/expressions/swizzle/read/vec3/f32.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
v : vec3<f32>;
-};
+}
var<private> P : S;
diff --git a/test/expressions/swizzle/read/vec3/i32.wgsl.expected.wgsl b/test/expressions/swizzle/read/vec3/i32.wgsl.expected.wgsl
index 9b440ce..72b0026 100644
--- a/test/expressions/swizzle/read/vec3/i32.wgsl.expected.wgsl
+++ b/test/expressions/swizzle/read/vec3/i32.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
v : vec3<i32>;
-};
+}
var<private> P : S;
diff --git a/test/expressions/swizzle/read/vec3/u32.wgsl.expected.wgsl b/test/expressions/swizzle/read/vec3/u32.wgsl.expected.wgsl
index 390ba90..1756e99 100644
--- a/test/expressions/swizzle/read/vec3/u32.wgsl.expected.wgsl
+++ b/test/expressions/swizzle/read/vec3/u32.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
v : vec3<u32>;
-};
+}
var<private> P : S;
diff --git a/test/expressions/swizzle/write/packed_vec3/f32.wgsl.expected.wgsl b/test/expressions/swizzle/write/packed_vec3/f32.wgsl.expected.wgsl
index 35bcaa3..84f2ef9 100644
--- a/test/expressions/swizzle/write/packed_vec3/f32.wgsl.expected.wgsl
+++ b/test/expressions/swizzle/write/packed_vec3/f32.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
v : vec3<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> U : S;
diff --git a/test/expressions/swizzle/write/packed_vec3/i32.wgsl.expected.wgsl b/test/expressions/swizzle/write/packed_vec3/i32.wgsl.expected.wgsl
index 75986e1..a017589 100644
--- a/test/expressions/swizzle/write/packed_vec3/i32.wgsl.expected.wgsl
+++ b/test/expressions/swizzle/write/packed_vec3/i32.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
v : vec3<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> U : S;
diff --git a/test/expressions/swizzle/write/packed_vec3/u32.wgsl.expected.wgsl b/test/expressions/swizzle/write/packed_vec3/u32.wgsl.expected.wgsl
index 8db4caf..b9c4866 100644
--- a/test/expressions/swizzle/write/packed_vec3/u32.wgsl.expected.wgsl
+++ b/test/expressions/swizzle/write/packed_vec3/u32.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
v : vec3<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> U : S;
diff --git a/test/expressions/swizzle/write/vec3/f32.wgsl.expected.wgsl b/test/expressions/swizzle/write/vec3/f32.wgsl.expected.wgsl
index 83e6e31..9eab0b0 100644
--- a/test/expressions/swizzle/write/vec3/f32.wgsl.expected.wgsl
+++ b/test/expressions/swizzle/write/vec3/f32.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
v : vec3<f32>;
-};
+}
var<private> P : S;
diff --git a/test/expressions/swizzle/write/vec3/i32.wgsl.expected.wgsl b/test/expressions/swizzle/write/vec3/i32.wgsl.expected.wgsl
index 0c055df..bd00bb3 100644
--- a/test/expressions/swizzle/write/vec3/i32.wgsl.expected.wgsl
+++ b/test/expressions/swizzle/write/vec3/i32.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
v : vec3<i32>;
-};
+}
var<private> P : S;
diff --git a/test/expressions/swizzle/write/vec3/u32.wgsl.expected.wgsl b/test/expressions/swizzle/write/vec3/u32.wgsl.expected.wgsl
index 301f985..0323375 100644
--- a/test/expressions/swizzle/write/vec3/u32.wgsl.expected.wgsl
+++ b/test/expressions/swizzle/write/vec3/u32.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
v : vec3<u32>;
-};
+}
var<private> P : S;
diff --git a/test/expressions/zero_init/array/struct.wgsl.expected.wgsl b/test/expressions/zero_init/array/struct.wgsl.expected.wgsl
index 939e93b..c864d0f 100644
--- a/test/expressions/zero_init/array/struct.wgsl.expected.wgsl
+++ b/test/expressions/zero_init/array/struct.wgsl.expected.wgsl
@@ -3,7 +3,7 @@
u : u32;
f : f32;
b : bool;
-};
+}
fn f() {
var v = array<S, 4>();
diff --git a/test/expressions/zero_init/struct/array.wgsl.expected.wgsl b/test/expressions/zero_init/struct/array.wgsl.expected.wgsl
index 522939f..97b1cce 100644
--- a/test/expressions/zero_init/struct/array.wgsl.expected.wgsl
+++ b/test/expressions/zero_init/struct/array.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : array<f32, 4>;
-};
+}
fn f() {
var v = S();
diff --git a/test/expressions/zero_init/struct/scalar.wgsl.expected.wgsl b/test/expressions/zero_init/struct/scalar.wgsl.expected.wgsl
index 0da534f..cd48ab4 100644
--- a/test/expressions/zero_init/struct/scalar.wgsl.expected.wgsl
+++ b/test/expressions/zero_init/struct/scalar.wgsl.expected.wgsl
@@ -3,7 +3,7 @@
u : u32;
f : f32;
b : bool;
-};
+}
fn f() {
var v = S();
diff --git a/test/identifiers/underscore/double/struct.wgsl.expected.wgsl b/test/identifiers/underscore/double/struct.wgsl.expected.wgsl
index 2a008b6..ad84d66 100644
--- a/test/identifiers/underscore/double/struct.wgsl.expected.wgsl
+++ b/test/identifiers/underscore/double/struct.wgsl.expected.wgsl
@@ -1,10 +1,10 @@
struct a {
b : i32;
-};
+}
struct a__ {
b__ : i32;
-};
+}
fn f() {
let c = a__();
diff --git a/test/identifiers/underscore/prefix/lower/struct.wgsl.expected.wgsl b/test/identifiers/underscore/prefix/lower/struct.wgsl.expected.wgsl
index 6565fc1..a995390 100644
--- a/test/identifiers/underscore/prefix/lower/struct.wgsl.expected.wgsl
+++ b/test/identifiers/underscore/prefix/lower/struct.wgsl.expected.wgsl
@@ -1,10 +1,10 @@
struct a {
b : i32;
-};
+}
struct _a {
_b : i32;
-};
+}
fn f() {
let c = _a();
diff --git a/test/identifiers/underscore/prefix/upper/struct.wgsl.expected.wgsl b/test/identifiers/underscore/prefix/upper/struct.wgsl.expected.wgsl
index 243f368..97a6d4c 100644
--- a/test/identifiers/underscore/prefix/upper/struct.wgsl.expected.wgsl
+++ b/test/identifiers/underscore/prefix/upper/struct.wgsl.expected.wgsl
@@ -1,10 +1,10 @@
struct A {
B : i32;
-};
+}
struct _A {
_B : i32;
-};
+}
fn f() {
let c = _A();
diff --git a/test/intrinsics/arrayLength/complex_via_let.wgsl.expected.wgsl b/test/intrinsics/arrayLength/complex_via_let.wgsl.expected.wgsl
index 0448ef6..1dcc7b1 100644
--- a/test/intrinsics/arrayLength/complex_via_let.wgsl.expected.wgsl
+++ b/test/intrinsics/arrayLength/complex_via_let.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : array<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> G : S;
diff --git a/test/intrinsics/arrayLength/deprecated.wgsl.expected.wgsl b/test/intrinsics/arrayLength/deprecated.wgsl.expected.wgsl
index 1db02f4..5489c10 100644
--- a/test/intrinsics/arrayLength/deprecated.wgsl.expected.wgsl
+++ b/test/intrinsics/arrayLength/deprecated.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : array<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> G : S;
diff --git a/test/intrinsics/arrayLength/simple.wgsl.expected.wgsl b/test/intrinsics/arrayLength/simple.wgsl.expected.wgsl
index 72d32ba..9b7d049 100644
--- a/test/intrinsics/arrayLength/simple.wgsl.expected.wgsl
+++ b/test/intrinsics/arrayLength/simple.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : array<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> G : S;
diff --git a/test/intrinsics/arrayLength/via_let.wgsl.expected.wgsl b/test/intrinsics/arrayLength/via_let.wgsl.expected.wgsl
index 163a302..13663f0 100644
--- a/test/intrinsics/arrayLength/via_let.wgsl.expected.wgsl
+++ b/test/intrinsics/arrayLength/via_let.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : array<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> G : S;
diff --git a/test/intrinsics/arrayLength/via_let_complex.wgsl.expected.wgsl b/test/intrinsics/arrayLength/via_let_complex.wgsl.expected.wgsl
index d4255df..7b07952 100644
--- a/test/intrinsics/arrayLength/via_let_complex.wgsl.expected.wgsl
+++ b/test/intrinsics/arrayLength/via_let_complex.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : array<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read> G : S;
diff --git a/test/intrinsics/gen/arrayLength/1588cd.wgsl.expected.wgsl b/test/intrinsics/gen/arrayLength/1588cd.wgsl.expected.wgsl
index a3c1031..645da49 100644
--- a/test/intrinsics/gen/arrayLength/1588cd.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/arrayLength/1588cd.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RO {
arg_0 : array<i32>;
-};
+}
[[group(0), binding(1)]] var<storage, read> sb_ro : SB_RO;
diff --git a/test/intrinsics/gen/arrayLength/61b1c7.wgsl.expected.wgsl b/test/intrinsics/gen/arrayLength/61b1c7.wgsl.expected.wgsl
index 6d43b63..f1d33c2 100644
--- a/test/intrinsics/gen/arrayLength/61b1c7.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/arrayLength/61b1c7.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : array<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/arrayLength/a0f5ca.wgsl.expected.wgsl b/test/intrinsics/gen/arrayLength/a0f5ca.wgsl.expected.wgsl
index 1e5ca7a..85468b4 100644
--- a/test/intrinsics/gen/arrayLength/a0f5ca.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/arrayLength/a0f5ca.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RO {
arg_0 : array<f32>;
-};
+}
[[group(0), binding(1)]] var<storage, read> sb_ro : SB_RO;
diff --git a/test/intrinsics/gen/arrayLength/cdd123.wgsl.expected.wgsl b/test/intrinsics/gen/arrayLength/cdd123.wgsl.expected.wgsl
index e0afa3c..65a2077 100644
--- a/test/intrinsics/gen/arrayLength/cdd123.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/arrayLength/cdd123.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : array<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/arrayLength/cfca0a.wgsl.expected.wgsl b/test/intrinsics/gen/arrayLength/cfca0a.wgsl.expected.wgsl
index 84f74eb..8930be0 100644
--- a/test/intrinsics/gen/arrayLength/cfca0a.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/arrayLength/cfca0a.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RO {
arg_0 : array<u32>;
-};
+}
[[group(0), binding(1)]] var<storage, read> sb_ro : SB_RO;
diff --git a/test/intrinsics/gen/arrayLength/eb510f.wgsl.expected.wgsl b/test/intrinsics/gen/arrayLength/eb510f.wgsl.expected.wgsl
index 7b7f49c..5b85130 100644
--- a/test/intrinsics/gen/arrayLength/eb510f.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/arrayLength/eb510f.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : array<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicAdd/8a199a.wgsl.expected.wgsl b/test/intrinsics/gen/atomicAdd/8a199a.wgsl.expected.wgsl
index ad75b16..432caa9 100644
--- a/test/intrinsics/gen/atomicAdd/8a199a.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicAdd/8a199a.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicAdd/d32fe4.wgsl.expected.wgsl b/test/intrinsics/gen/atomicAdd/d32fe4.wgsl.expected.wgsl
index acbf6ff..5bc41ca 100644
--- a/test/intrinsics/gen/atomicAdd/d32fe4.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicAdd/d32fe4.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicAnd/152966.wgsl.expected.wgsl b/test/intrinsics/gen/atomicAnd/152966.wgsl.expected.wgsl
index 026499f..c0be5bc 100644
--- a/test/intrinsics/gen/atomicAnd/152966.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicAnd/152966.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicAnd/85a8d9.wgsl.expected.wgsl b/test/intrinsics/gen/atomicAnd/85a8d9.wgsl.expected.wgsl
index 7f6b09e..c63138b 100644
--- a/test/intrinsics/gen/atomicAnd/85a8d9.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicAnd/85a8d9.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicCompareExchangeWeak/12871c.wgsl.expected.wgsl b/test/intrinsics/gen/atomicCompareExchangeWeak/12871c.wgsl.expected.wgsl
index 990942e..eed9b1f 100644
--- a/test/intrinsics/gen/atomicCompareExchangeWeak/12871c.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicCompareExchangeWeak/12871c.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicCompareExchangeWeak/6673da.wgsl.expected.wgsl b/test/intrinsics/gen/atomicCompareExchangeWeak/6673da.wgsl.expected.wgsl
index 985e3bd..ea4899a 100644
--- a/test/intrinsics/gen/atomicCompareExchangeWeak/6673da.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicCompareExchangeWeak/6673da.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicExchange/d59712.wgsl.expected.wgsl b/test/intrinsics/gen/atomicExchange/d59712.wgsl.expected.wgsl
index 293aaad..9970c9b 100644
--- a/test/intrinsics/gen/atomicExchange/d59712.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicExchange/d59712.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicExchange/f2e22f.wgsl.expected.wgsl b/test/intrinsics/gen/atomicExchange/f2e22f.wgsl.expected.wgsl
index 58c2ae3..511c02b 100644
--- a/test/intrinsics/gen/atomicExchange/f2e22f.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicExchange/f2e22f.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicLoad/0806ad.wgsl.expected.wgsl b/test/intrinsics/gen/atomicLoad/0806ad.wgsl.expected.wgsl
index 3b643bb..b0f3f7d 100644
--- a/test/intrinsics/gen/atomicLoad/0806ad.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicLoad/0806ad.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicLoad/fe6cc3.wgsl.expected.wgsl b/test/intrinsics/gen/atomicLoad/fe6cc3.wgsl.expected.wgsl
index 6155c41..a4b878b 100644
--- a/test/intrinsics/gen/atomicLoad/fe6cc3.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicLoad/fe6cc3.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicMax/51b9be.wgsl.expected.wgsl b/test/intrinsics/gen/atomicMax/51b9be.wgsl.expected.wgsl
index e2dd9eb..3f36fbc 100644
--- a/test/intrinsics/gen/atomicMax/51b9be.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicMax/51b9be.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicMax/92aa72.wgsl.expected.wgsl b/test/intrinsics/gen/atomicMax/92aa72.wgsl.expected.wgsl
index a59e10a..d1c9bea 100644
--- a/test/intrinsics/gen/atomicMax/92aa72.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicMax/92aa72.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicMin/8e38dc.wgsl.expected.wgsl b/test/intrinsics/gen/atomicMin/8e38dc.wgsl.expected.wgsl
index f4da3b5..ef74988 100644
--- a/test/intrinsics/gen/atomicMin/8e38dc.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicMin/8e38dc.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicMin/c67a74.wgsl.expected.wgsl b/test/intrinsics/gen/atomicMin/c67a74.wgsl.expected.wgsl
index 91b08cc..1e1fb28 100644
--- a/test/intrinsics/gen/atomicMin/c67a74.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicMin/c67a74.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicOr/5e95d4.wgsl.expected.wgsl b/test/intrinsics/gen/atomicOr/5e95d4.wgsl.expected.wgsl
index 2f15ddd..a483962 100644
--- a/test/intrinsics/gen/atomicOr/5e95d4.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicOr/5e95d4.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicOr/8d96a0.wgsl.expected.wgsl b/test/intrinsics/gen/atomicOr/8d96a0.wgsl.expected.wgsl
index dd150f6..57de392 100644
--- a/test/intrinsics/gen/atomicOr/8d96a0.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicOr/8d96a0.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicStore/cdc29e.wgsl.expected.wgsl b/test/intrinsics/gen/atomicStore/cdc29e.wgsl.expected.wgsl
index fc0ae3b..9f19d43 100644
--- a/test/intrinsics/gen/atomicStore/cdc29e.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicStore/cdc29e.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicStore/d1e9a6.wgsl.expected.wgsl b/test/intrinsics/gen/atomicStore/d1e9a6.wgsl.expected.wgsl
index e038d50..803cb0d 100644
--- a/test/intrinsics/gen/atomicStore/d1e9a6.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicStore/d1e9a6.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicSub/051100.wgsl.expected.wgsl b/test/intrinsics/gen/atomicSub/051100.wgsl.expected.wgsl
index e94eefc..1059294 100644
--- a/test/intrinsics/gen/atomicSub/051100.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicSub/051100.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicSub/15bfc9.wgsl.expected.wgsl b/test/intrinsics/gen/atomicSub/15bfc9.wgsl.expected.wgsl
index ca53ef6..26c3cbe 100644
--- a/test/intrinsics/gen/atomicSub/15bfc9.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicSub/15bfc9.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicXor/54510e.wgsl.expected.wgsl b/test/intrinsics/gen/atomicXor/54510e.wgsl.expected.wgsl
index c9a6544..e0ef7e7 100644
--- a/test/intrinsics/gen/atomicXor/54510e.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicXor/54510e.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<u32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/gen/atomicXor/c1b78c.wgsl.expected.wgsl b/test/intrinsics/gen/atomicXor/c1b78c.wgsl.expected.wgsl
index 010c089..6840482 100644
--- a/test/intrinsics/gen/atomicXor/c1b78c.wgsl.expected.wgsl
+++ b/test/intrinsics/gen/atomicXor/c1b78c.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SB_RW {
arg_0 : atomic<i32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> sb_rw : SB_RW;
diff --git a/test/intrinsics/ignore/runtime_array.wgsl.expected.wgsl b/test/intrinsics/ignore/runtime_array.wgsl.expected.wgsl
index ab69868..e58a70c 100644
--- a/test/intrinsics/ignore/runtime_array.wgsl.expected.wgsl
+++ b/test/intrinsics/ignore/runtime_array.wgsl.expected.wgsl
@@ -4,7 +4,7 @@
struct S {
arr : array<i32>;
-};
+}
[[binding(0), group(0)]] var<storage, read_write> s : S;
diff --git a/test/intrinsics/ignore/storage_buffer.wgsl.expected.wgsl b/test/intrinsics/ignore/storage_buffer.wgsl.expected.wgsl
index 34817fc..0f2f5e9 100644
--- a/test/intrinsics/ignore/storage_buffer.wgsl.expected.wgsl
+++ b/test/intrinsics/ignore/storage_buffer.wgsl.expected.wgsl
@@ -8,7 +8,7 @@
struct S {
i : i32;
-};
+}
[[binding(0), group(0)]] var<storage, read_write> s : S;
diff --git a/test/intrinsics/ignore/uniform_buffer.wgsl.expected.wgsl b/test/intrinsics/ignore/uniform_buffer.wgsl.expected.wgsl
index 2d8a109..72a1efe 100644
--- a/test/intrinsics/ignore/uniform_buffer.wgsl.expected.wgsl
+++ b/test/intrinsics/ignore/uniform_buffer.wgsl.expected.wgsl
@@ -8,7 +8,7 @@
struct S {
i : i32;
-};
+}
[[binding(0), group(0)]] var<uniform> u : S;
diff --git a/test/intrinsics/textureDimensions/depth_ms.spvasm.expected.wgsl b/test/intrinsics/textureDimensions/depth_ms.spvasm.expected.wgsl
index 0dbdb01..d7e9e8b 100644
--- a/test/intrinsics/textureDimensions/depth_ms.spvasm.expected.wgsl
+++ b/test/intrinsics/textureDimensions/depth_ms.spvasm.expected.wgsl
@@ -23,7 +23,7 @@
struct vertex_main_out {
[[builtin(position)]]
tint_symbol_1_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn vertex_main() -> vertex_main_out {
diff --git a/test/intrinsics/textureLoad/depth_ms.spvasm.expected.wgsl b/test/intrinsics/textureLoad/depth_ms.spvasm.expected.wgsl
index c308490..13f9223 100644
--- a/test/intrinsics/textureLoad/depth_ms.spvasm.expected.wgsl
+++ b/test/intrinsics/textureLoad/depth_ms.spvasm.expected.wgsl
@@ -23,7 +23,7 @@
struct vertex_main_out {
[[builtin(position)]]
tint_symbol_1_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn vertex_main() -> vertex_main_out {
diff --git a/test/intrinsics/textureNumSamples/depth_ms.spvasm.expected.wgsl b/test/intrinsics/textureNumSamples/depth_ms.spvasm.expected.wgsl
index ac6cc99..bafa3a8 100644
--- a/test/intrinsics/textureNumSamples/depth_ms.spvasm.expected.wgsl
+++ b/test/intrinsics/textureNumSamples/depth_ms.spvasm.expected.wgsl
@@ -23,7 +23,7 @@
struct vertex_main_out {
[[builtin(position)]]
tint_symbol_1_1 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn vertex_main() -> vertex_main_out {
diff --git a/test/layout/storage/mat2x2/f32.wgsl.expected.wgsl b/test/layout/storage/mat2x2/f32.wgsl.expected.wgsl
index 0df98b4..9933db6 100644
--- a/test/layout/storage/mat2x2/f32.wgsl.expected.wgsl
+++ b/test/layout/storage/mat2x2/f32.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct SSBO {
m : mat2x2<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> ssbo : SSBO;
diff --git a/test/layout/storage/mat2x2/stride/16.spvasm.expected.wgsl b/test/layout/storage/mat2x2/stride/16.spvasm.expected.wgsl
index d2d8b02..ffb157a 100644
--- a/test/layout/storage/mat2x2/stride/16.spvasm.expected.wgsl
+++ b/test/layout/storage/mat2x2/stride/16.spvasm.expected.wgsl
@@ -1,6 +1,6 @@
struct SSBO {
m : [[stride(16)]] array<vec2<f32>, 2u>;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> ssbo : SSBO;
diff --git a/test/let/global/global.wgsl.expected.wgsl b/test/let/global/global.wgsl.expected.wgsl
index 126f25c..68c5ae5 100644
--- a/test/let/global/global.wgsl.expected.wgsl
+++ b/test/let/global/global.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct MyStruct {
f1 : f32;
-};
+}
type MyArray = array<f32, 10>;
diff --git a/test/let/inferred/function.wgsl.expected.wgsl b/test/let/inferred/function.wgsl.expected.wgsl
index 03d68ef1..4f5b69a 100644
--- a/test/let/inferred/function.wgsl.expected.wgsl
+++ b/test/let/inferred/function.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct MyStruct {
f1 : f32;
-};
+}
type MyArray = array<f32, 10>;
diff --git a/test/ptr_ref/load/global/struct_field.spvasm.expected.wgsl b/test/ptr_ref/load/global/struct_field.spvasm.expected.wgsl
index 8771732..67eba57 100644
--- a/test/ptr_ref/load/global/struct_field.spvasm.expected.wgsl
+++ b/test/ptr_ref/load/global/struct_field.spvasm.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
i : i32;
-};
+}
var<private> V : S;
diff --git a/test/ptr_ref/load/global/struct_field.wgsl.expected.wgsl b/test/ptr_ref/load/global/struct_field.wgsl.expected.wgsl
index 074fe80..d0b3e34 100644
--- a/test/ptr_ref/load/global/struct_field.wgsl.expected.wgsl
+++ b/test/ptr_ref/load/global/struct_field.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
i : i32;
-};
+}
var<private> V : S;
diff --git a/test/ptr_ref/load/local/ptr_storage.wgsl.expected.wgsl b/test/ptr_ref/load/local/ptr_storage.wgsl.expected.wgsl
index 13f8743..3111c5f 100644
--- a/test/ptr_ref/load/local/ptr_storage.wgsl.expected.wgsl
+++ b/test/ptr_ref/load/local/ptr_storage.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : i32;
-};
+}
[[group(0), binding(0)]] var<storage, read_write> v : S;
diff --git a/test/ptr_ref/load/local/ptr_uniform.wgsl.expected.wgsl b/test/ptr_ref/load/local/ptr_uniform.wgsl.expected.wgsl
index 9ce5c52..b6f8628 100644
--- a/test/ptr_ref/load/local/ptr_uniform.wgsl.expected.wgsl
+++ b/test/ptr_ref/load/local/ptr_uniform.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : i32;
-};
+}
[[group(0), binding(0)]] var<uniform> v : S;
diff --git a/test/ptr_ref/load/local/struct_field.spvasm.expected.wgsl b/test/ptr_ref/load/local/struct_field.spvasm.expected.wgsl
index aa20b42..ea14750 100644
--- a/test/ptr_ref/load/local/struct_field.spvasm.expected.wgsl
+++ b/test/ptr_ref/load/local/struct_field.spvasm.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
i : i32;
-};
+}
fn main_1() {
var i : i32;
diff --git a/test/ptr_ref/load/local/struct_field.wgsl.expected.wgsl b/test/ptr_ref/load/local/struct_field.wgsl.expected.wgsl
index 18aca63..7bbcb5a 100644
--- a/test/ptr_ref/load/local/struct_field.wgsl.expected.wgsl
+++ b/test/ptr_ref/load/local/struct_field.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
i : i32;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main() {
diff --git a/test/ptr_ref/store/global/struct_field.spvasm.expected.wgsl b/test/ptr_ref/store/global/struct_field.spvasm.expected.wgsl
index c217a5f..e70b574 100644
--- a/test/ptr_ref/store/global/struct_field.spvasm.expected.wgsl
+++ b/test/ptr_ref/store/global/struct_field.spvasm.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
i : i32;
-};
+}
var<private> V : S;
diff --git a/test/ptr_ref/store/local/struct_field.spvasm.expected.wgsl b/test/ptr_ref/store/local/struct_field.spvasm.expected.wgsl
index d628330..b3b95df 100644
--- a/test/ptr_ref/store/local/struct_field.spvasm.expected.wgsl
+++ b/test/ptr_ref/store/local/struct_field.spvasm.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
i : i32;
-};
+}
fn main_1() {
var V : S;
diff --git a/test/samples/compute_boids.wgsl.expected.wgsl b/test/samples/compute_boids.wgsl.expected.wgsl
index 8fd0a19..394631c 100644
--- a/test/samples/compute_boids.wgsl.expected.wgsl
+++ b/test/samples/compute_boids.wgsl.expected.wgsl
@@ -13,7 +13,7 @@
struct Particle {
pos : vec2<f32>;
vel : vec2<f32>;
-};
+}
struct SimParams {
deltaT : f32;
@@ -23,11 +23,11 @@
rule1Scale : f32;
rule2Scale : f32;
rule3Scale : f32;
-};
+}
struct Particles {
particles : array<Particle, 5>;
-};
+}
[[binding(0), group(0)]] var<uniform> params : SimParams;
diff --git a/test/samples/cube.wgsl.expected.wgsl b/test/samples/cube.wgsl.expected.wgsl
index 29109a6..a764703 100644
--- a/test/samples/cube.wgsl.expected.wgsl
+++ b/test/samples/cube.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct Uniforms {
modelViewProjectionMatrix : mat4x4<f32>;
-};
+}
[[binding(0), group(0)]] var<uniform> uniforms : Uniforms;
@@ -9,14 +9,14 @@
cur_position : vec4<f32>;
[[location(1)]]
color : vec4<f32>;
-};
+}
struct VertexOutput {
[[location(0)]]
vtxFragColor : vec4<f32>;
[[builtin(position)]]
Position : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn vtx_main(input : VertexInput) -> VertexOutput {
diff --git a/test/samples/simple_vertex.spvasm.expected.wgsl b/test/samples/simple_vertex.spvasm.expected.wgsl
index 45b705f..372bb24 100644
--- a/test/samples/simple_vertex.spvasm.expected.wgsl
+++ b/test/samples/simple_vertex.spvasm.expected.wgsl
@@ -8,7 +8,7 @@
struct main_out {
[[builtin(position)]]
gl_Position : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> main_out {
diff --git a/test/shader_io/compute_input_builtins_struct.wgsl.expected.wgsl b/test/shader_io/compute_input_builtins_struct.wgsl.expected.wgsl
index 23d354a..c3830ee 100644
--- a/test/shader_io/compute_input_builtins_struct.wgsl.expected.wgsl
+++ b/test/shader_io/compute_input_builtins_struct.wgsl.expected.wgsl
@@ -9,7 +9,7 @@
workgroup_id : vec3<u32>;
[[builtin(num_workgroups)]]
num_workgroups : vec3<u32>;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main(inputs : ComputeInputs) {
diff --git a/test/shader_io/compute_input_mixed.wgsl.expected.wgsl b/test/shader_io/compute_input_mixed.wgsl.expected.wgsl
index bb7428c..369ae7f 100644
--- a/test/shader_io/compute_input_mixed.wgsl.expected.wgsl
+++ b/test/shader_io/compute_input_mixed.wgsl.expected.wgsl
@@ -1,12 +1,12 @@
struct ComputeInputs0 {
[[builtin(local_invocation_id)]]
local_invocation_id : vec3<u32>;
-};
+}
struct ComputeInputs1 {
[[builtin(workgroup_id)]]
workgroup_id : vec3<u32>;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main(inputs0 : ComputeInputs0, [[builtin(local_invocation_index)]] local_invocation_index : u32, [[builtin(global_invocation_id)]] global_invocation_id : vec3<u32>, inputs1 : ComputeInputs1) {
diff --git a/test/shader_io/fragment_input_builtins_struct.wgsl.expected.wgsl b/test/shader_io/fragment_input_builtins_struct.wgsl.expected.wgsl
index 0cf1aeb..79ec5fd 100644
--- a/test/shader_io/fragment_input_builtins_struct.wgsl.expected.wgsl
+++ b/test/shader_io/fragment_input_builtins_struct.wgsl.expected.wgsl
@@ -7,7 +7,7 @@
sample_index : u32;
[[builtin(sample_mask)]]
sample_mask : u32;
-};
+}
[[stage(fragment)]]
fn main(inputs : FragmentInputs) {
diff --git a/test/shader_io/fragment_input_locations_struct.wgsl.expected.wgsl b/test/shader_io/fragment_input_locations_struct.wgsl.expected.wgsl
index 4fa7de4..5179ec9 100644
--- a/test/shader_io/fragment_input_locations_struct.wgsl.expected.wgsl
+++ b/test/shader_io/fragment_input_locations_struct.wgsl.expected.wgsl
@@ -7,7 +7,7 @@
loc2 : f32;
[[location(3)]]
loc3 : vec4<f32>;
-};
+}
[[stage(fragment)]]
fn main(inputs : FragmentInputs) {
diff --git a/test/shader_io/fragment_input_mixed.wgsl.expected.wgsl b/test/shader_io/fragment_input_mixed.wgsl.expected.wgsl
index a6f21f1..bca1e79 100644
--- a/test/shader_io/fragment_input_mixed.wgsl.expected.wgsl
+++ b/test/shader_io/fragment_input_mixed.wgsl.expected.wgsl
@@ -3,14 +3,14 @@
position : vec4<f32>;
[[location(0), interpolate(flat)]]
loc0 : i32;
-};
+}
struct FragmentInputs1 {
[[location(3)]]
loc3 : vec4<f32>;
[[builtin(sample_mask)]]
sample_mask : u32;
-};
+}
[[stage(fragment)]]
fn main(inputs0 : FragmentInputs0, [[builtin(front_facing)]] front_facing : bool, [[location(1), interpolate(flat)]] loc1 : u32, [[builtin(sample_index)]] sample_index : u32, inputs1 : FragmentInputs1, [[location(2)]] loc2 : f32) {
diff --git a/test/shader_io/fragment_output_builtins_struct.wgsl.expected.wgsl b/test/shader_io/fragment_output_builtins_struct.wgsl.expected.wgsl
index 6617a26..e87f857 100644
--- a/test/shader_io/fragment_output_builtins_struct.wgsl.expected.wgsl
+++ b/test/shader_io/fragment_output_builtins_struct.wgsl.expected.wgsl
@@ -3,7 +3,7 @@
frag_depth : f32;
[[builtin(sample_mask)]]
sample_mask : u32;
-};
+}
[[stage(fragment)]]
fn main() -> FragmentOutputs {
diff --git a/test/shader_io/fragment_output_locations_struct.wgsl.expected.wgsl b/test/shader_io/fragment_output_locations_struct.wgsl.expected.wgsl
index 879805c..da4e7cf 100644
--- a/test/shader_io/fragment_output_locations_struct.wgsl.expected.wgsl
+++ b/test/shader_io/fragment_output_locations_struct.wgsl.expected.wgsl
@@ -7,7 +7,7 @@
loc2 : f32;
[[location(3)]]
loc3 : vec4<f32>;
-};
+}
[[stage(fragment)]]
fn main() -> FragmentOutputs {
diff --git a/test/shader_io/fragment_output_mixed.wgsl.expected.wgsl b/test/shader_io/fragment_output_mixed.wgsl.expected.wgsl
index 3fb401c..8069265 100644
--- a/test/shader_io/fragment_output_mixed.wgsl.expected.wgsl
+++ b/test/shader_io/fragment_output_mixed.wgsl.expected.wgsl
@@ -11,7 +11,7 @@
sample_mask : u32;
[[location(3)]]
loc3 : vec4<f32>;
-};
+}
[[stage(fragment)]]
fn main() -> FragmentOutputs {
diff --git a/test/shader_io/interpolate_input_struct.wgsl.expected.wgsl b/test/shader_io/interpolate_input_struct.wgsl.expected.wgsl
index b90c09b..20a8106 100644
--- a/test/shader_io/interpolate_input_struct.wgsl.expected.wgsl
+++ b/test/shader_io/interpolate_input_struct.wgsl.expected.wgsl
@@ -15,7 +15,7 @@
linear_centroid : f32;
[[location(7), interpolate(linear, sample)]]
linear_sample : f32;
-};
+}
[[stage(fragment)]]
fn main(in : In) {
diff --git a/test/shader_io/interpolate_integers.wgsl.expected.wgsl b/test/shader_io/interpolate_integers.wgsl.expected.wgsl
index 9b3eee2..afabf7c 100644
--- a/test/shader_io/interpolate_integers.wgsl.expected.wgsl
+++ b/test/shader_io/interpolate_integers.wgsl.expected.wgsl
@@ -9,7 +9,7 @@
vu : vec4<u32>;
[[builtin(position)]]
pos : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn vert_main() -> Interface {
diff --git a/test/shader_io/interpolate_return_struct.wgsl.expected.wgsl b/test/shader_io/interpolate_return_struct.wgsl.expected.wgsl
index fad2030..bcf8177 100644
--- a/test/shader_io/interpolate_return_struct.wgsl.expected.wgsl
+++ b/test/shader_io/interpolate_return_struct.wgsl.expected.wgsl
@@ -17,7 +17,7 @@
linear_centroid : f32;
[[location(7), interpolate(linear, sample)]]
linear_sample : f32;
-};
+}
[[stage(vertex)]]
fn main() -> Out {
diff --git a/test/shader_io/invariant_struct_member.wgsl.expected.wgsl b/test/shader_io/invariant_struct_member.wgsl.expected.wgsl
index 03d9193..503a0ba 100644
--- a/test/shader_io/invariant_struct_member.wgsl.expected.wgsl
+++ b/test/shader_io/invariant_struct_member.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct Out {
[[builtin(position), invariant]]
pos : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> Out {
diff --git a/test/shader_io/shared_struct_different_stages.wgsl.expected.wgsl b/test/shader_io/shared_struct_different_stages.wgsl.expected.wgsl
index 67a91d6..343afdd 100644
--- a/test/shader_io/shared_struct_different_stages.wgsl.expected.wgsl
+++ b/test/shader_io/shared_struct_different_stages.wgsl.expected.wgsl
@@ -5,7 +5,7 @@
col2 : f32;
[[builtin(position)]]
pos : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn vert_main() -> Interface {
diff --git a/test/shader_io/shared_struct_helper_function.wgsl.expected.wgsl b/test/shader_io/shared_struct_helper_function.wgsl.expected.wgsl
index c282cd6..034d5e1 100644
--- a/test/shader_io/shared_struct_helper_function.wgsl.expected.wgsl
+++ b/test/shader_io/shared_struct_helper_function.wgsl.expected.wgsl
@@ -3,7 +3,7 @@
pos : vec4<f32>;
[[location(0), interpolate(flat)]]
loc0 : i32;
-};
+}
fn foo(x : f32) -> VertexOutput {
return VertexOutput(vec4<f32>(x, x, x, 1.0), 42);
diff --git a/test/shader_io/shared_struct_storage_buffer.wgsl.expected.wgsl b/test/shader_io/shared_struct_storage_buffer.wgsl.expected.wgsl
index 971ff7b..7872704 100644
--- a/test/shader_io/shared_struct_storage_buffer.wgsl.expected.wgsl
+++ b/test/shader_io/shared_struct_storage_buffer.wgsl.expected.wgsl
@@ -5,7 +5,7 @@
u : u32;
[[align(128), builtin(position)]]
v : vec4<f32>;
-};
+}
[[group(0), binding(0)]] var<storage, write> output : S;
diff --git a/test/shader_io/vertex_input_builtins_struct.wgsl.expected.wgsl b/test/shader_io/vertex_input_builtins_struct.wgsl.expected.wgsl
index f63100d..7d885b4 100644
--- a/test/shader_io/vertex_input_builtins_struct.wgsl.expected.wgsl
+++ b/test/shader_io/vertex_input_builtins_struct.wgsl.expected.wgsl
@@ -3,7 +3,7 @@
vertex_index : u32;
[[builtin(instance_index)]]
instance_index : u32;
-};
+}
[[stage(vertex)]]
fn main(inputs : VertexInputs) -> [[builtin(position)]] vec4<f32> {
diff --git a/test/shader_io/vertex_input_locations_struct.wgsl.expected.wgsl b/test/shader_io/vertex_input_locations_struct.wgsl.expected.wgsl
index 28d40aa..7b7c1b0 100644
--- a/test/shader_io/vertex_input_locations_struct.wgsl.expected.wgsl
+++ b/test/shader_io/vertex_input_locations_struct.wgsl.expected.wgsl
@@ -7,7 +7,7 @@
loc2 : f32;
[[location(3)]]
loc3 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main(inputs : VertexInputs) -> [[builtin(position)]] vec4<f32> {
diff --git a/test/shader_io/vertex_input_mixed.wgsl.expected.wgsl b/test/shader_io/vertex_input_mixed.wgsl.expected.wgsl
index 0cd61f6..81a6507 100644
--- a/test/shader_io/vertex_input_mixed.wgsl.expected.wgsl
+++ b/test/shader_io/vertex_input_mixed.wgsl.expected.wgsl
@@ -3,14 +3,14 @@
vertex_index : u32;
[[location(0)]]
loc0 : i32;
-};
+}
struct VertexInputs1 {
[[location(2)]]
loc2 : f32;
[[location(3)]]
loc3 : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main(inputs0 : VertexInputs0, [[location(1)]] loc1 : u32, [[builtin(instance_index)]] instance_index : u32, inputs1 : VertexInputs1) -> [[builtin(position)]] vec4<f32> {
diff --git a/test/shader_io/vertex_output_builtins_struct.wgsl.expected.wgsl b/test/shader_io/vertex_output_builtins_struct.wgsl.expected.wgsl
index 77d3b51..744325c 100644
--- a/test/shader_io/vertex_output_builtins_struct.wgsl.expected.wgsl
+++ b/test/shader_io/vertex_output_builtins_struct.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct VertexOutputs {
[[builtin(position)]]
position : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> VertexOutputs {
diff --git a/test/shader_io/vertex_output_locations_struct.wgsl.expected.wgsl b/test/shader_io/vertex_output_locations_struct.wgsl.expected.wgsl
index f1c6c7c..a3df42d 100644
--- a/test/shader_io/vertex_output_locations_struct.wgsl.expected.wgsl
+++ b/test/shader_io/vertex_output_locations_struct.wgsl.expected.wgsl
@@ -9,7 +9,7 @@
loc3 : vec4<f32>;
[[builtin(position)]]
position : vec4<f32>;
-};
+}
[[stage(vertex)]]
fn main() -> VertexOutputs {
diff --git a/test/shadowing/function/var.wgsl.expected.wgsl b/test/shadowing/function/var.wgsl.expected.wgsl
index feea3e6..eff3fc5 100644
--- a/test/shadowing/function/var.wgsl.expected.wgsl
+++ b/test/shadowing/function/var.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct a {
a : i32;
-};
+}
fn f() {
{
diff --git a/test/shadowing/struct/let.wgsl.expected.wgsl b/test/shadowing/struct/let.wgsl.expected.wgsl
index 4425a83..1c889fa 100644
--- a/test/shadowing/struct/let.wgsl.expected.wgsl
+++ b/test/shadowing/struct/let.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct a {
a : i32;
-};
+}
fn f() {
{
diff --git a/test/shadowing/struct/param.wgsl.expected.wgsl b/test/shadowing/struct/param.wgsl.expected.wgsl
index 2cb3206..62184f1 100644
--- a/test/shadowing/struct/param.wgsl.expected.wgsl
+++ b/test/shadowing/struct/param.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct a {
a : i32;
-};
+}
fn f(a : a) {
let b = a;
diff --git a/test/shadowing/struct/var.wgsl.expected.wgsl b/test/shadowing/struct/var.wgsl.expected.wgsl
index feea3e6..eff3fc5 100644
--- a/test/shadowing/struct/var.wgsl.expected.wgsl
+++ b/test/shadowing/struct/var.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct a {
a : i32;
-};
+}
fn f() {
{
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/in_for_loop_body.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/in_for_loop_body.wgsl.expected.wgsl
index a459951..f6394af 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/in_for_loop_body.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/in_for_loop_body.wgsl.expected.wgsl
@@ -1,14 +1,14 @@
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct OuterS {
a1 : array<InnerS, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/in_for_loop_continuing.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/in_for_loop_continuing.wgsl.expected.wgsl
index ac653ea..85d01c6 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/in_for_loop_continuing.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/in_for_loop_continuing.wgsl.expected.wgsl
@@ -1,14 +1,14 @@
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct OuterS {
a1 : array<InnerS, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/in_for_loop_init.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/in_for_loop_init.wgsl.expected.wgsl
index 5c08a50..6d4ee1c 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/in_for_loop_init.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/in_for_loop_init.wgsl.expected.wgsl
@@ -1,14 +1,14 @@
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct OuterS {
a1 : array<InnerS, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/indexing_with_side_effect_func.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/indexing_with_side_effect_func.wgsl.expected.wgsl
index 06620e8..7ae55be 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/indexing_with_side_effect_func.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/indexing_with_side_effect_func.wgsl.expected.wgsl
@@ -1,19 +1,19 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct S1 {
a2 : array<InnerS, 8>;
-};
+}
struct OuterS {
a1 : array<S1, 8>;
-};
+}
var<private> nextIndex : u32;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/struct_array.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/struct_array.wgsl.expected.wgsl
index 9a967aa..22548cc 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/struct_array.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/struct_array.wgsl.expected.wgsl
@@ -1,14 +1,14 @@
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct OuterS {
a1 : array<InnerS, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/struct_array_array.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/struct_array_array.wgsl.expected.wgsl
index db81a61..555cf5d 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/struct_array_array.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/struct_array_array.wgsl.expected.wgsl
@@ -1,15 +1,15 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct OuterS {
a1 : array<array<InnerS, 8>, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/struct_array_struct.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/struct_array_struct.wgsl.expected.wgsl
index d8a6c91..cae1e5df 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/struct_array_struct.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/struct_array_struct.wgsl.expected.wgsl
@@ -1,18 +1,18 @@
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct S1 {
s2 : InnerS;
-};
+}
struct OuterS {
a1 : array<S1, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/struct_array_struct_array.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/struct_array_struct_array.wgsl.expected.wgsl
index 9efd02b..6969d94 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/struct_array_struct_array.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/struct_array_struct_array.wgsl.expected.wgsl
@@ -1,19 +1,19 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct S1 {
a2 : array<InnerS, 8>;
-};
+}
struct OuterS {
a1 : array<S1, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/struct_dynamic_array.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/struct_dynamic_array.wgsl.expected.wgsl
index 4eae479..c08a5f8 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/struct_dynamic_array.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/struct_dynamic_array.wgsl.expected.wgsl
@@ -1,14 +1,14 @@
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct OuterS {
a1 : array<InnerS>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/struct_dynamic_array_struct_array.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/struct_dynamic_array_struct_array.wgsl.expected.wgsl
index a6925a9..c53b90d 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/struct_dynamic_array_struct_array.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/struct_dynamic_array_struct_array.wgsl.expected.wgsl
@@ -1,19 +1,19 @@
struct Uniforms {
i : u32;
j : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct S1 {
a2 : array<InnerS, 8>;
-};
+}
struct OuterS {
a1 : array<S1>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/struct_matrix.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/struct_matrix.wgsl.expected.wgsl
index 62a9bbb..aeb5f1b 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/struct_matrix.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/struct_matrix.wgsl.expected.wgsl
@@ -1,10 +1,10 @@
struct Uniforms {
i : u32;
-};
+}
struct OuterS {
m1 : mat2x4<f32>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/struct_multiple_arrays.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/struct_multiple_arrays.wgsl.expected.wgsl
index dcf1542..55091c5 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/struct_multiple_arrays.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/struct_multiple_arrays.wgsl.expected.wgsl
@@ -1,15 +1,15 @@
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct OuterS {
a1 : array<InnerS, 8>;
a2 : array<InnerS, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/struct_struct_array.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/struct_struct_array.wgsl.expected.wgsl
index daa4a12..f2ebffe 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/struct_struct_array.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/struct_struct_array.wgsl.expected.wgsl
@@ -1,18 +1,18 @@
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct S1 {
a : array<InnerS, 8>;
-};
+}
struct OuterS {
s2 : S1;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/struct_vector.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/struct_vector.wgsl.expected.wgsl
index f478089..da718cf 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/struct_vector.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/struct_vector.wgsl.expected.wgsl
@@ -1,10 +1,10 @@
struct Uniforms {
i : u32;
-};
+}
struct OuterS {
v1 : vec3<f32>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/vector_assign.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/vector_assign.wgsl.expected.wgsl
index 75951e5..928e38d 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/vector_assign.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/vector_assign.wgsl.expected.wgsl
@@ -1,10 +1,10 @@
struct Uniforms {
i : u32;
-};
+}
struct OuterS {
a1 : array<u32, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/via_pointer.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/via_pointer.wgsl.expected.wgsl
index 3752e4a..f65b285 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/via_pointer.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/via_pointer.wgsl.expected.wgsl
@@ -1,14 +1,14 @@
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct OuterS {
a1 : array<InnerS, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/indexed_assign_to_array_in_struct/via_pointer_arg.wgsl.expected.wgsl b/test/statements/assign/indexed_assign_to_array_in_struct/via_pointer_arg.wgsl.expected.wgsl
index 9a80feb..86b031a 100644
--- a/test/statements/assign/indexed_assign_to_array_in_struct/via_pointer_arg.wgsl.expected.wgsl
+++ b/test/statements/assign/indexed_assign_to_array_in_struct/via_pointer_arg.wgsl.expected.wgsl
@@ -1,14 +1,14 @@
struct Uniforms {
i : u32;
-};
+}
struct InnerS {
v : i32;
-};
+}
struct OuterS {
a1 : array<InnerS, 8>;
-};
+}
[[group(1), binding(4)]] var<uniform> uniforms : Uniforms;
diff --git a/test/statements/assign/phony/addr_of_non_constructable.wgsl.expected.wgsl b/test/statements/assign/phony/addr_of_non_constructable.wgsl.expected.wgsl
index 6cd06e9..0952e9dd 100644
--- a/test/statements/assign/phony/addr_of_non_constructable.wgsl.expected.wgsl
+++ b/test/statements/assign/phony/addr_of_non_constructable.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
arr : array<i32>;
-};
+}
[[binding(0), group(0)]] var<storage, read_write> s : S;
diff --git a/test/statements/assign/phony/addr_of_runtime_array.wgsl.expected.wgsl b/test/statements/assign/phony/addr_of_runtime_array.wgsl.expected.wgsl
index 02446cd..b6c7441 100644
--- a/test/statements/assign/phony/addr_of_runtime_array.wgsl.expected.wgsl
+++ b/test/statements/assign/phony/addr_of_runtime_array.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
arr : array<i32>;
-};
+}
[[binding(0), group(0)]] var<storage, read_write> s : S;
diff --git a/test/statements/assign/phony/storage_buffer.wgsl.expected.wgsl b/test/statements/assign/phony/storage_buffer.wgsl.expected.wgsl
index 3a83d4d..c4caa99 100644
--- a/test/statements/assign/phony/storage_buffer.wgsl.expected.wgsl
+++ b/test/statements/assign/phony/storage_buffer.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
i : i32;
-};
+}
[[binding(0), group(0)]] var<storage, read_write> s : S;
diff --git a/test/statements/assign/phony/uniform_buffer.wgsl.expected.wgsl b/test/statements/assign/phony/uniform_buffer.wgsl.expected.wgsl
index 7a04f48..3ef1045 100644
--- a/test/statements/assign/phony/uniform_buffer.wgsl.expected.wgsl
+++ b/test/statements/assign/phony/uniform_buffer.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
i : i32;
-};
+}
[[binding(0), group(0)]] var<uniform> u : S;
diff --git a/test/statements/for/condition/struct_ctor.wgsl.expected.wgsl b/test/statements/for/condition/struct_ctor.wgsl.expected.wgsl
index dd9b9c5..45b0bea 100644
--- a/test/statements/for/condition/struct_ctor.wgsl.expected.wgsl
+++ b/test/statements/for/condition/struct_ctor.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
i : i32;
-};
+}
fn f() {
var i : i32;
diff --git a/test/statements/for/continuing/struct_ctor.wgsl.expected.wgsl b/test/statements/for/continuing/struct_ctor.wgsl.expected.wgsl
index 7baa234..392153b 100644
--- a/test/statements/for/continuing/struct_ctor.wgsl.expected.wgsl
+++ b/test/statements/for/continuing/struct_ctor.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
i : i32;
-};
+}
fn f() {
for(var i = 0; false; i = (i + S(1).i)) {
diff --git a/test/statements/for/initializer/struct_ctor.wgsl.expected.wgsl b/test/statements/for/initializer/struct_ctor.wgsl.expected.wgsl
index 312aad5..eb6a570 100644
--- a/test/statements/for/initializer/struct_ctor.wgsl.expected.wgsl
+++ b/test/statements/for/initializer/struct_ctor.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
i : i32;
-};
+}
fn f() {
for(var i : i32 = S(1).i; false; ) {
diff --git a/test/struct/type_constructor.wgsl.expected.wgsl b/test/struct/type_constructor.wgsl.expected.wgsl
index 5722576..c526e3f 100644
--- a/test/struct/type_constructor.wgsl.expected.wgsl
+++ b/test/struct/type_constructor.wgsl.expected.wgsl
@@ -3,22 +3,22 @@
b : i32;
c : i32;
d : i32;
-};
+}
struct S2 {
e : i32;
f : S1;
-};
+}
struct S3 {
g : i32;
h : S1;
i : S2;
-};
+}
struct T {
a : array<i32, 2>;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main() {
diff --git a/test/types/function_scope_declarations.wgsl.expected.wgsl b/test/types/function_scope_declarations.wgsl.expected.wgsl
index 4f1194c..3845786 100644
--- a/test/types/function_scope_declarations.wgsl.expected.wgsl
+++ b/test/types/function_scope_declarations.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : f32;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main() {
diff --git a/test/types/module_scope_let.wgsl.expected.wgsl b/test/types/module_scope_let.wgsl.expected.wgsl
index 7243c5c..be35814 100644
--- a/test/types/module_scope_let.wgsl.expected.wgsl
+++ b/test/types/module_scope_let.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : f32;
-};
+}
let bool_let : bool = bool();
diff --git a/test/types/module_scope_var.wgsl.expected.wgsl b/test/types/module_scope_var.wgsl.expected.wgsl
index 0b4bd73..55f4e0a 100644
--- a/test/types/module_scope_var.wgsl.expected.wgsl
+++ b/test/types/module_scope_var.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : f32;
-};
+}
var<private> bool_var : bool;
diff --git a/test/types/module_scope_var_initializers.wgsl.expected.wgsl b/test/types/module_scope_var_initializers.wgsl.expected.wgsl
index fa0ef75..d9dcf61 100644
--- a/test/types/module_scope_var_initializers.wgsl.expected.wgsl
+++ b/test/types/module_scope_var_initializers.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : f32;
-};
+}
var<private> bool_var : bool = bool();
diff --git a/test/types/parameters.wgsl.expected.wgsl b/test/types/parameters.wgsl.expected.wgsl
index 87bb564..2720ce3 100644
--- a/test/types/parameters.wgsl.expected.wgsl
+++ b/test/types/parameters.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : f32;
-};
+}
fn foo(param_bool : bool, param_i32 : i32, param_u32 : u32, param_f32 : f32, param_v2i32 : vec2<i32>, param_v3u32 : vec3<u32>, param_v4f32 : vec4<f32>, param_m2x3 : mat2x3<f32>, param_arr : array<f32, 4>, param_struct : S, param_ptr_f32 : ptr<function, f32>, param_ptr_vec : ptr<function, vec4<f32>>, param_ptr_arr : ptr<function, array<f32, 4>>) {
}
diff --git a/test/types/return_types.wgsl.expected.wgsl b/test/types/return_types.wgsl.expected.wgsl
index 517b684..d34a095 100644
--- a/test/types/return_types.wgsl.expected.wgsl
+++ b/test/types/return_types.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S {
a : f32;
-};
+}
fn ret_bool() -> bool {
return bool();
diff --git a/test/types/struct_members.wgsl.expected.wgsl b/test/types/struct_members.wgsl.expected.wgsl
index 2bd0f33..7ff178c 100644
--- a/test/types/struct_members.wgsl.expected.wgsl
+++ b/test/types/struct_members.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct S_inner {
a : f32;
-};
+}
struct S {
member_bool : bool;
@@ -13,7 +13,7 @@
member_m2x3 : mat2x3<f32>;
member_arr : array<f32, 4>;
member_struct : S_inner;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main() {
diff --git a/test/var/inferred/function.wgsl.expected.wgsl b/test/var/inferred/function.wgsl.expected.wgsl
index 4614108..2c8b7ab 100644
--- a/test/var/inferred/function.wgsl.expected.wgsl
+++ b/test/var/inferred/function.wgsl.expected.wgsl
@@ -1,6 +1,6 @@
struct MyStruct {
f1 : f32;
-};
+}
type MyArray = array<f32, 10>;
diff --git a/test/var/initialization/function/struct.wgsl.expected.wgsl b/test/var/initialization/function/struct.wgsl.expected.wgsl
index 57bf9a7..538187c 100644
--- a/test/var/initialization/function/struct.wgsl.expected.wgsl
+++ b/test/var/initialization/function/struct.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct S {
a : i32;
b : f32;
-};
+}
[[stage(compute), workgroup_size(1)]]
fn main() {
diff --git a/test/var/initialization/private/struct.wgsl.expected.wgsl b/test/var/initialization/private/struct.wgsl.expected.wgsl
index 3a0a381..a91da6a 100644
--- a/test/var/initialization/private/struct.wgsl.expected.wgsl
+++ b/test/var/initialization/private/struct.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct S {
a : i32;
b : f32;
-};
+}
var<private> v : S;
diff --git a/test/var/initialization/workgroup/struct.wgsl.expected.wgsl b/test/var/initialization/workgroup/struct.wgsl.expected.wgsl
index 7b2e10e..b67e95a 100644
--- a/test/var/initialization/workgroup/struct.wgsl.expected.wgsl
+++ b/test/var/initialization/workgroup/struct.wgsl.expected.wgsl
@@ -1,7 +1,7 @@
struct S {
a : i32;
b : f32;
-};
+}
var<workgroup> v : S;