diff --git a/test/expressions/binary/add/mat3x3-mat3x3/f32.wgsl.expected.glsl b/test/expressions/binary/add/mat3x3-mat3x3/f32.wgsl.expected.glsl
index 034c499..88b1b8f 100644
--- a/test/expressions/binary/add/mat3x3-mat3x3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/add/mat3x3-mat3x3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   mat3 r = (a + b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/add/scalar-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/add/scalar-scalar/f32.wgsl.expected.glsl
index a11adca..0b90ef1 100644
--- a/test/expressions/binary/add/scalar-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/add/scalar-scalar/f32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   float r = (1.0f + 2.0f);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/add/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/add/scalar-scalar/i32.wgsl.expected.glsl
index 4390508..5803fdc 100644
--- a/test/expressions/binary/add/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/add/scalar-scalar/i32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   int r = (1 + 2);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/add/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/add/scalar-scalar/u32.wgsl.expected.glsl
index 5e1db81..a7ec957 100644
--- a/test/expressions/binary/add/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/add/scalar-scalar/u32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   uint r = (1u + 2u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/add/scalar-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/add/scalar-vec3/f32.wgsl.expected.glsl
index 0655ac2..e54fe43 100644
--- a/test/expressions/binary/add/scalar-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/add/scalar-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a + b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/add/scalar-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/add/scalar-vec3/i32.wgsl.expected.glsl
index ea0ed84..a9808d1 100644
--- a/test/expressions/binary/add/scalar-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/add/scalar-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a + b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/add/scalar-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/add/scalar-vec3/u32.wgsl.expected.glsl
index 0fe0f75..6144b34 100644
--- a/test/expressions/binary/add/scalar-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/add/scalar-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a + b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/add/vec3-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/add/vec3-scalar/f32.wgsl.expected.glsl
index e7a27305..63461e9 100644
--- a/test/expressions/binary/add/vec3-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/add/vec3-scalar/f32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   vec3 r = (a + 4.0f);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/add/vec3-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/add/vec3-scalar/i32.wgsl.expected.glsl
index 7882f3b..b13d477 100644
--- a/test/expressions/binary/add/vec3-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/add/vec3-scalar/i32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   ivec3 r = (a + 4);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/add/vec3-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/add/vec3-scalar/u32.wgsl.expected.glsl
index 160e65c..b1d217c 100644
--- a/test/expressions/binary/add/vec3-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/add/vec3-scalar/u32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   uvec3 r = (a + 4u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/add/vec3-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/add/vec3-vec3/f32.wgsl.expected.glsl
index 7bd2c34..5afc728 100644
--- a/test/expressions/binary/add/vec3-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/add/vec3-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a + b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/add/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/add/vec3-vec3/i32.wgsl.expected.glsl
index 0b48495..14f55b4 100644
--- a/test/expressions/binary/add/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/add/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a + b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/add/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/add/vec3-vec3/u32.wgsl.expected.glsl
index bff24ce..9956af3 100644
--- a/test/expressions/binary/add/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/add/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a + b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/bit-and/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/bit-and/scalar-scalar/i32.wgsl.expected.glsl
index ea9a02a..4e33041 100644
--- a/test/expressions/binary/bit-and/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/bit-and/scalar-scalar/i32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   int r = (1 & 2);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/bit-and/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/bit-and/scalar-scalar/u32.wgsl.expected.glsl
index f46f9cd..ae4149d 100644
--- a/test/expressions/binary/bit-and/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/bit-and/scalar-scalar/u32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   uint r = (1u & 2u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/bit-and/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/bit-and/vec3-vec3/i32.wgsl.expected.glsl
index d03945b..1091a53 100644
--- a/test/expressions/binary/bit-and/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/bit-and/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a & b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/bit-and/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/bit-and/vec3-vec3/u32.wgsl.expected.glsl
index 1fc4c7f..d594442 100644
--- a/test/expressions/binary/bit-and/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/bit-and/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a & b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/bit-or/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/bit-or/scalar-scalar/i32.wgsl.expected.glsl
index 519f411..db2479f 100644
--- a/test/expressions/binary/bit-or/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/bit-or/scalar-scalar/i32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   int r = (1 | 2);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/bit-or/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/bit-or/scalar-scalar/u32.wgsl.expected.glsl
index 52ae9c0..38b5d66 100644
--- a/test/expressions/binary/bit-or/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/bit-or/scalar-scalar/u32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   uint r = (1u | 2u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/bit-or/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/bit-or/vec3-vec3/i32.wgsl.expected.glsl
index a16e26d..37b3d5f 100644
--- a/test/expressions/binary/bit-or/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/bit-or/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a | b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/bit-or/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/bit-or/vec3-vec3/u32.wgsl.expected.glsl
index 887fc52..e938edb 100644
--- a/test/expressions/binary/bit-or/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/bit-or/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a | b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/bit-xor/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/bit-xor/scalar-scalar/i32.wgsl.expected.glsl
index 05cd2f1..0bf5a9e 100644
--- a/test/expressions/binary/bit-xor/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/bit-xor/scalar-scalar/i32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   int r = (1 ^ 2);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/bit-xor/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/bit-xor/scalar-scalar/u32.wgsl.expected.glsl
index 284867d..5509458 100644
--- a/test/expressions/binary/bit-xor/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/bit-xor/scalar-scalar/u32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   uint r = (1u ^ 2u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/bit-xor/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/bit-xor/vec3-vec3/i32.wgsl.expected.glsl
index 8b212ba..386ff24 100644
--- a/test/expressions/binary/bit-xor/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/bit-xor/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a ^ b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/bit-xor/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/bit-xor/vec3-vec3/u32.wgsl.expected.glsl
index 59b5058..4b18413 100644
--- a/test/expressions/binary/bit-xor/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/bit-xor/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a ^ b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div/scalar-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/div/scalar-scalar/f32.wgsl.expected.glsl
index 7db6fa7..9ce3552 100644
--- a/test/expressions/binary/div/scalar-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div/scalar-scalar/f32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   float r = (1.0f / 2.0f);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/div/scalar-scalar/i32.wgsl.expected.glsl
index f0efa17..04a161e 100644
--- a/test/expressions/binary/div/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div/scalar-scalar/i32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   int r = (1 / 2);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/div/scalar-scalar/u32.wgsl.expected.glsl
index d5d5366..16baff5 100644
--- a/test/expressions/binary/div/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div/scalar-scalar/u32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   uint r = (1u / 2u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div/scalar-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/div/scalar-vec3/f32.wgsl.expected.glsl
index 6512ba3..968e319 100644
--- a/test/expressions/binary/div/scalar-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div/scalar-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div/scalar-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/div/scalar-vec3/i32.wgsl.expected.glsl
index 08c20db..0a2c8b3 100644
--- a/test/expressions/binary/div/scalar-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div/scalar-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div/scalar-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/div/scalar-vec3/u32.wgsl.expected.glsl
index 1ee9726..c5ab59f 100644
--- a/test/expressions/binary/div/scalar-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div/scalar-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div/vec3-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/div/vec3-scalar/f32.wgsl.expected.glsl
index 28eea80..ce2532e 100644
--- a/test/expressions/binary/div/vec3-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div/vec3-scalar/f32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   vec3 r = (a / 4.0f);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div/vec3-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/div/vec3-scalar/i32.wgsl.expected.glsl
index 126af32..9d8ce73 100644
--- a/test/expressions/binary/div/vec3-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div/vec3-scalar/i32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   ivec3 r = (a / 4);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div/vec3-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/div/vec3-scalar/u32.wgsl.expected.glsl
index 6442c2c..05c23d9 100644
--- a/test/expressions/binary/div/vec3-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div/vec3-scalar/u32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   uvec3 r = (a / 4u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div/vec3-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/div/vec3-vec3/f32.wgsl.expected.glsl
index 4c1e415..03e4822 100644
--- a/test/expressions/binary/div/vec3-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div/vec3-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/div/vec3-vec3/i32.wgsl.expected.glsl
index 18991b5..b25a8ae 100644
--- a/test/expressions/binary/div/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/div/vec3-vec3/u32.wgsl.expected.glsl
index 8b8ddcb..faac292 100644
--- a/test/expressions/binary/div/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_constant/scalar-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_constant/scalar-scalar/f32.wgsl.expected.glsl
index a07511d..a9f5867 100644
--- a/test/expressions/binary/div_by_zero/by_constant/scalar-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_constant/scalar-scalar/f32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   float r = (1.0f / 0.0f);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_constant/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_constant/scalar-scalar/i32.wgsl.expected.glsl
index 0eb418f..5aecc10 100644
--- a/test/expressions/binary/div_by_zero/by_constant/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_constant/scalar-scalar/i32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   int r = (1 / 0);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_constant/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_constant/scalar-scalar/u32.wgsl.expected.glsl
index d45aa3d..9a9100c 100644
--- a/test/expressions/binary/div_by_zero/by_constant/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_constant/scalar-scalar/u32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   uint r = (1u / 0u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_constant/scalar-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_constant/scalar-vec3/f32.wgsl.expected.glsl
index 2043793..296587e 100644
--- a/test/expressions/binary/div_by_zero/by_constant/scalar-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_constant/scalar-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_constant/scalar-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_constant/scalar-vec3/i32.wgsl.expected.glsl
index f2e29a8..19372fd 100644
--- a/test/expressions/binary/div_by_zero/by_constant/scalar-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_constant/scalar-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_constant/scalar-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_constant/scalar-vec3/u32.wgsl.expected.glsl
index ab8795d..2ca5062 100644
--- a/test/expressions/binary/div_by_zero/by_constant/scalar-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_constant/scalar-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_constant/vec3-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_constant/vec3-scalar/f32.wgsl.expected.glsl
index 1b67029..4e2085b 100644
--- a/test/expressions/binary/div_by_zero/by_constant/vec3-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_constant/vec3-scalar/f32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   vec3 r = (a / 0.0f);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_constant/vec3-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_constant/vec3-scalar/i32.wgsl.expected.glsl
index 7eccb90..47945cb 100644
--- a/test/expressions/binary/div_by_zero/by_constant/vec3-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_constant/vec3-scalar/i32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   ivec3 r = (a / 0);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_constant/vec3-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_constant/vec3-scalar/u32.wgsl.expected.glsl
index 2b5b406..0c9cf4c 100644
--- a/test/expressions/binary/div_by_zero/by_constant/vec3-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_constant/vec3-scalar/u32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   uvec3 r = (a / 0u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_constant/vec3-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_constant/vec3-vec3/f32.wgsl.expected.glsl
index a92210d..fe6684d 100644
--- a/test/expressions/binary/div_by_zero/by_constant/vec3-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_constant/vec3-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_constant/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_constant/vec3-vec3/i32.wgsl.expected.glsl
index eb947d2..d20b10d 100644
--- a/test/expressions/binary/div_by_zero/by_constant/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_constant/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_constant/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_constant/vec3-vec3/u32.wgsl.expected.glsl
index 607c183..3fc99d1 100644
--- a/test/expressions/binary/div_by_zero/by_constant/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_constant/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_expression/scalar-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_expression/scalar-scalar/f32.wgsl.expected.glsl
index 5c949fc..1410729 100644
--- a/test/expressions/binary/div_by_zero/by_expression/scalar-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_expression/scalar-scalar/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   float r = (a / (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_expression/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_expression/scalar-scalar/i32.wgsl.expected.glsl
index 2677dda..53c8ba4 100644
--- a/test/expressions/binary/div_by_zero/by_expression/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_expression/scalar-scalar/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   int r = (a / (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_expression/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_expression/scalar-scalar/u32.wgsl.expected.glsl
index 3db6a58..7b857f9 100644
--- a/test/expressions/binary/div_by_zero/by_expression/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_expression/scalar-scalar/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uint r = (a / (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_expression/scalar-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_expression/scalar-vec3/f32.wgsl.expected.glsl
index d4073b3..709ea3b 100644
--- a/test/expressions/binary/div_by_zero/by_expression/scalar-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_expression/scalar-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a / (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_expression/scalar-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_expression/scalar-vec3/i32.wgsl.expected.glsl
index b6fc980..b9172f6 100644
--- a/test/expressions/binary/div_by_zero/by_expression/scalar-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_expression/scalar-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a / (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_expression/scalar-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_expression/scalar-vec3/u32.wgsl.expected.glsl
index f8a5911..9b2455b 100644
--- a/test/expressions/binary/div_by_zero/by_expression/scalar-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_expression/scalar-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a / (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_expression/vec3-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_expression/vec3-scalar/f32.wgsl.expected.glsl
index b9a0d2c..c98f287 100644
--- a/test/expressions/binary/div_by_zero/by_expression/vec3-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_expression/vec3-scalar/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a / (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_expression/vec3-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_expression/vec3-scalar/i32.wgsl.expected.glsl
index 383f01b..3178cf2 100644
--- a/test/expressions/binary/div_by_zero/by_expression/vec3-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_expression/vec3-scalar/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a / (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_expression/vec3-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_expression/vec3-scalar/u32.wgsl.expected.glsl
index ef21236..00dd875 100644
--- a/test/expressions/binary/div_by_zero/by_expression/vec3-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_expression/vec3-scalar/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a / (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_expression/vec3-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_expression/vec3-vec3/f32.wgsl.expected.glsl
index b60c041..7f66bc7 100644
--- a/test/expressions/binary/div_by_zero/by_expression/vec3-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_expression/vec3-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a / (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_expression/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_expression/vec3-vec3/i32.wgsl.expected.glsl
index 4908466..ff1cd8d 100644
--- a/test/expressions/binary/div_by_zero/by_expression/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_expression/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a / (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_expression/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_expression/vec3-vec3/u32.wgsl.expected.glsl
index d97e26c..328c0a2 100644
--- a/test/expressions/binary/div_by_zero/by_expression/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_expression/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a / (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_identifier/scalar-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_identifier/scalar-scalar/f32.wgsl.expected.glsl
index 7c9bba5..09ba0c8 100644
--- a/test/expressions/binary/div_by_zero/by_identifier/scalar-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_identifier/scalar-scalar/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   float r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_identifier/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_identifier/scalar-scalar/i32.wgsl.expected.glsl
index c4ef3a3..f545f0b 100644
--- a/test/expressions/binary/div_by_zero/by_identifier/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_identifier/scalar-scalar/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   int r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_identifier/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_identifier/scalar-scalar/u32.wgsl.expected.glsl
index 09fa79e..37ae046 100644
--- a/test/expressions/binary/div_by_zero/by_identifier/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_identifier/scalar-scalar/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uint r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_identifier/scalar-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_identifier/scalar-vec3/f32.wgsl.expected.glsl
index 2043793..296587e 100644
--- a/test/expressions/binary/div_by_zero/by_identifier/scalar-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_identifier/scalar-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_identifier/scalar-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_identifier/scalar-vec3/i32.wgsl.expected.glsl
index f2e29a8..19372fd 100644
--- a/test/expressions/binary/div_by_zero/by_identifier/scalar-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_identifier/scalar-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_identifier/scalar-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_identifier/scalar-vec3/u32.wgsl.expected.glsl
index ab8795d..2ca5062 100644
--- a/test/expressions/binary/div_by_zero/by_identifier/scalar-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_identifier/scalar-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_identifier/vec3-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_identifier/vec3-scalar/f32.wgsl.expected.glsl
index b3a53e9..ffa9909 100644
--- a/test/expressions/binary/div_by_zero/by_identifier/vec3-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_identifier/vec3-scalar/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_identifier/vec3-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_identifier/vec3-scalar/i32.wgsl.expected.glsl
index 0be07ba..58899fd 100644
--- a/test/expressions/binary/div_by_zero/by_identifier/vec3-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_identifier/vec3-scalar/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_identifier/vec3-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_identifier/vec3-scalar/u32.wgsl.expected.glsl
index c872141..b1bcc1c 100644
--- a/test/expressions/binary/div_by_zero/by_identifier/vec3-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_identifier/vec3-scalar/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_identifier/vec3-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_identifier/vec3-vec3/f32.wgsl.expected.glsl
index a92210d..fe6684d 100644
--- a/test/expressions/binary/div_by_zero/by_identifier/vec3-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_identifier/vec3-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_identifier/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_identifier/vec3-vec3/i32.wgsl.expected.glsl
index eb947d2..d20b10d 100644
--- a/test/expressions/binary/div_by_zero/by_identifier/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_identifier/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/div_by_zero/by_identifier/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/div_by_zero/by_identifier/vec3-vec3/u32.wgsl.expected.glsl
index 607c183..3fc99d1 100644
--- a/test/expressions/binary/div_by_zero/by_identifier/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/div_by_zero/by_identifier/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a / b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/left-shift/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/left-shift/scalar-scalar/i32.wgsl.expected.glsl
index 11e2270..f57ae36 100644
--- a/test/expressions/binary/left-shift/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/left-shift/scalar-scalar/i32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   int r = (1 << 2u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/left-shift/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/left-shift/scalar-scalar/u32.wgsl.expected.glsl
index 8c7242c..4d0d3ce 100644
--- a/test/expressions/binary/left-shift/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/left-shift/scalar-scalar/u32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   uint r = (1u << 2u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/left-shift/vector-vector/i32.wgsl.expected.glsl b/test/expressions/binary/left-shift/vector-vector/i32.wgsl.expected.glsl
index 71fa7c5..db0ef8f 100644
--- a/test/expressions/binary/left-shift/vector-vector/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/left-shift/vector-vector/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a << b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/left-shift/vector-vector/u32.wgsl.expected.glsl b/test/expressions/binary/left-shift/vector-vector/u32.wgsl.expected.glsl
index e7cf54f..f886625 100644
--- a/test/expressions/binary/left-shift/vector-vector/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/left-shift/vector-vector/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a << b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod/scalar-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/mod/scalar-scalar/f32.wgsl.expected.glsl
index e0fd1be..7587ea3 100644
--- a/test/expressions/binary/mod/scalar-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod/scalar-scalar/f32.wgsl.expected.glsl
@@ -8,11 +8,11 @@
   float r = (1.0f % 2.0f);
   return;
 }
+
 void main() {
   f();
 }
 
-
 Error parsing GLSL shader:
 ERROR: 0:6: '%' :  wrong operand types: no operation '%' exists that takes a left-hand operand of type ' const float' and a right operand of type ' const float' (or there is no acceptable conversion)
 ERROR: 0:6: '' : compilation terminated 
diff --git a/test/expressions/binary/mod/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/mod/scalar-scalar/i32.wgsl.expected.glsl
index 5c42789..506196a1 100644
--- a/test/expressions/binary/mod/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod/scalar-scalar/i32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   int r = (1 % 2);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/mod/scalar-scalar/u32.wgsl.expected.glsl
index 0015a14..0040d2b 100644
--- a/test/expressions/binary/mod/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod/scalar-scalar/u32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   uint r = (1u % 2u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod/vec3-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/mod/vec3-vec3/f32.wgsl.expected.glsl
index 602ca02..fbf2962 100644
--- a/test/expressions/binary/mod/vec3-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod/vec3-vec3/f32.wgsl.expected.glsl
@@ -10,11 +10,11 @@
   vec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
 Error parsing GLSL shader:
 ERROR: 0:8: '%' :  wrong operand types: no operation '%' exists that takes a left-hand operand of type ' temp mediump 3-component vector of float' and a right operand of type ' temp mediump 3-component vector of float' (or there is no acceptable conversion)
 ERROR: 0:8: '' : compilation terminated 
diff --git a/test/expressions/binary/mod/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/mod/vec3-vec3/i32.wgsl.expected.glsl
index 7fa186b..685f89d 100644
--- a/test/expressions/binary/mod/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/mod/vec3-vec3/u32.wgsl.expected.glsl
index 101e545..fe2fe88 100644
--- a/test/expressions/binary/mod/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_constant/scalar-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_constant/scalar-scalar/f32.wgsl.expected.glsl
index 34e9cf4..6d3d71d 100644
--- a/test/expressions/binary/mod_by_zero/by_constant/scalar-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_constant/scalar-scalar/f32.wgsl.expected.glsl
@@ -8,11 +8,11 @@
   float r = (1.0f % 0.0f);
   return;
 }
+
 void main() {
   f();
 }
 
-
 Error parsing GLSL shader:
 ERROR: 0:6: '%' :  wrong operand types: no operation '%' exists that takes a left-hand operand of type ' const float' and a right operand of type ' const float' (or there is no acceptable conversion)
 ERROR: 0:6: '' : compilation terminated 
diff --git a/test/expressions/binary/mod_by_zero/by_constant/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_constant/scalar-scalar/i32.wgsl.expected.glsl
index bec5c24..6bef751 100644
--- a/test/expressions/binary/mod_by_zero/by_constant/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_constant/scalar-scalar/i32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   int r = (1 % 0);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_constant/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_constant/scalar-scalar/u32.wgsl.expected.glsl
index 2d2b907..56ac547 100644
--- a/test/expressions/binary/mod_by_zero/by_constant/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_constant/scalar-scalar/u32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   uint r = (1u % 0u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_constant/scalar-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_constant/scalar-vec3/i32.wgsl.expected.glsl
index 2f83124..589fb87 100644
--- a/test/expressions/binary/mod_by_zero/by_constant/scalar-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_constant/scalar-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_constant/scalar-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_constant/scalar-vec3/u32.wgsl.expected.glsl
index 6d65fc6..a4b1c80 100644
--- a/test/expressions/binary/mod_by_zero/by_constant/scalar-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_constant/scalar-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_constant/vec3-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_constant/vec3-scalar/i32.wgsl.expected.glsl
index a2fb916..1c492a5 100644
--- a/test/expressions/binary/mod_by_zero/by_constant/vec3-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_constant/vec3-scalar/i32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   ivec3 r = (a % 0);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_constant/vec3-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_constant/vec3-scalar/u32.wgsl.expected.glsl
index 4fad4fb..6a048ef 100644
--- a/test/expressions/binary/mod_by_zero/by_constant/vec3-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_constant/vec3-scalar/u32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   uvec3 r = (a % 0u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_constant/vec3-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_constant/vec3-vec3/f32.wgsl.expected.glsl
index d75e8d6..9a5fc61 100644
--- a/test/expressions/binary/mod_by_zero/by_constant/vec3-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_constant/vec3-vec3/f32.wgsl.expected.glsl
@@ -10,11 +10,11 @@
   vec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
 Error parsing GLSL shader:
 ERROR: 0:8: '%' :  wrong operand types: no operation '%' exists that takes a left-hand operand of type ' temp mediump 3-component vector of float' and a right operand of type ' temp mediump 3-component vector of float' (or there is no acceptable conversion)
 ERROR: 0:8: '' : compilation terminated 
diff --git a/test/expressions/binary/mod_by_zero/by_constant/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_constant/vec3-vec3/i32.wgsl.expected.glsl
index 6fa1fb7..d7abe79 100644
--- a/test/expressions/binary/mod_by_zero/by_constant/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_constant/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_constant/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_constant/vec3-vec3/u32.wgsl.expected.glsl
index ed6faa1..dd411f1 100644
--- a/test/expressions/binary/mod_by_zero/by_constant/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_constant/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_expression/scalar-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_expression/scalar-scalar/f32.wgsl.expected.glsl
index 0090c86..14d3b41 100644
--- a/test/expressions/binary/mod_by_zero/by_expression/scalar-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_expression/scalar-scalar/f32.wgsl.expected.glsl
@@ -10,11 +10,11 @@
   float r = (a % (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
 Error parsing GLSL shader:
 ERROR: 0:8: '%' :  wrong operand types: no operation '%' exists that takes a left-hand operand of type ' temp mediump float' and a right operand of type ' temp mediump float' (or there is no acceptable conversion)
 ERROR: 0:8: '' : compilation terminated 
diff --git a/test/expressions/binary/mod_by_zero/by_expression/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_expression/scalar-scalar/i32.wgsl.expected.glsl
index 053101e..501dc92 100644
--- a/test/expressions/binary/mod_by_zero/by_expression/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_expression/scalar-scalar/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   int r = (a % (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_expression/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_expression/scalar-scalar/u32.wgsl.expected.glsl
index 85af6af..988e967 100644
--- a/test/expressions/binary/mod_by_zero/by_expression/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_expression/scalar-scalar/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uint r = (a % (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_expression/scalar-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_expression/scalar-vec3/i32.wgsl.expected.glsl
index ebb12f2..97ce0fa 100644
--- a/test/expressions/binary/mod_by_zero/by_expression/scalar-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_expression/scalar-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a % (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_expression/scalar-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_expression/scalar-vec3/u32.wgsl.expected.glsl
index d7da750..9bd7ffb 100644
--- a/test/expressions/binary/mod_by_zero/by_expression/scalar-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_expression/scalar-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a % (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_expression/vec3-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_expression/vec3-scalar/i32.wgsl.expected.glsl
index 60e75ff..e0a0c05 100644
--- a/test/expressions/binary/mod_by_zero/by_expression/vec3-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_expression/vec3-scalar/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a % (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_expression/vec3-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_expression/vec3-scalar/u32.wgsl.expected.glsl
index 0c1b086..7e5a571 100644
--- a/test/expressions/binary/mod_by_zero/by_expression/vec3-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_expression/vec3-scalar/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a % (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_expression/vec3-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_expression/vec3-vec3/f32.wgsl.expected.glsl
index 88ca6ba..4c2f21f 100644
--- a/test/expressions/binary/mod_by_zero/by_expression/vec3-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_expression/vec3-vec3/f32.wgsl.expected.glsl
@@ -10,11 +10,11 @@
   vec3 r = (a % (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
 Error parsing GLSL shader:
 ERROR: 0:8: '%' :  wrong operand types: no operation '%' exists that takes a left-hand operand of type ' temp mediump 3-component vector of float' and a right operand of type ' temp mediump 3-component vector of float' (or there is no acceptable conversion)
 ERROR: 0:8: '' : compilation terminated 
diff --git a/test/expressions/binary/mod_by_zero/by_expression/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_expression/vec3-vec3/i32.wgsl.expected.glsl
index 0c114a5..70a09f5 100644
--- a/test/expressions/binary/mod_by_zero/by_expression/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_expression/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a % (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_expression/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_expression/vec3-vec3/u32.wgsl.expected.glsl
index c2619d8..aea8897 100644
--- a/test/expressions/binary/mod_by_zero/by_expression/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_expression/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a % (b + b));
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_identifier/scalar-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_identifier/scalar-scalar/f32.wgsl.expected.glsl
index 6611689..29fd5fe 100644
--- a/test/expressions/binary/mod_by_zero/by_identifier/scalar-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_identifier/scalar-scalar/f32.wgsl.expected.glsl
@@ -10,11 +10,11 @@
   float r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
 Error parsing GLSL shader:
 ERROR: 0:8: '%' :  wrong operand types: no operation '%' exists that takes a left-hand operand of type ' temp mediump float' and a right operand of type ' temp mediump float' (or there is no acceptable conversion)
 ERROR: 0:8: '' : compilation terminated 
diff --git a/test/expressions/binary/mod_by_zero/by_identifier/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_identifier/scalar-scalar/i32.wgsl.expected.glsl
index fcbb1c3..1b64b4a 100644
--- a/test/expressions/binary/mod_by_zero/by_identifier/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_identifier/scalar-scalar/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   int r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_identifier/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_identifier/scalar-scalar/u32.wgsl.expected.glsl
index 8e628f4..eca91f8 100644
--- a/test/expressions/binary/mod_by_zero/by_identifier/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_identifier/scalar-scalar/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uint r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_identifier/scalar-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_identifier/scalar-vec3/i32.wgsl.expected.glsl
index 2f83124..589fb87 100644
--- a/test/expressions/binary/mod_by_zero/by_identifier/scalar-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_identifier/scalar-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_identifier/scalar-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_identifier/scalar-vec3/u32.wgsl.expected.glsl
index 6d65fc6..a4b1c80 100644
--- a/test/expressions/binary/mod_by_zero/by_identifier/scalar-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_identifier/scalar-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_identifier/vec3-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_identifier/vec3-scalar/i32.wgsl.expected.glsl
index 49d0cc0..797a0d7 100644
--- a/test/expressions/binary/mod_by_zero/by_identifier/vec3-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_identifier/vec3-scalar/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_identifier/vec3-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_identifier/vec3-scalar/u32.wgsl.expected.glsl
index 3e616b3..241eab3 100644
--- a/test/expressions/binary/mod_by_zero/by_identifier/vec3-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_identifier/vec3-scalar/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_identifier/vec3-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_identifier/vec3-vec3/f32.wgsl.expected.glsl
index d75e8d6..9a5fc61 100644
--- a/test/expressions/binary/mod_by_zero/by_identifier/vec3-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_identifier/vec3-vec3/f32.wgsl.expected.glsl
@@ -10,11 +10,11 @@
   vec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
 Error parsing GLSL shader:
 ERROR: 0:8: '%' :  wrong operand types: no operation '%' exists that takes a left-hand operand of type ' temp mediump 3-component vector of float' and a right operand of type ' temp mediump 3-component vector of float' (or there is no acceptable conversion)
 ERROR: 0:8: '' : compilation terminated 
diff --git a/test/expressions/binary/mod_by_zero/by_identifier/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_identifier/vec3-vec3/i32.wgsl.expected.glsl
index 6fa1fb7..d7abe79 100644
--- a/test/expressions/binary/mod_by_zero/by_identifier/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_identifier/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mod_by_zero/by_identifier/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/mod_by_zero/by_identifier/vec3-vec3/u32.wgsl.expected.glsl
index ed6faa1..dd411f1 100644
--- a/test/expressions/binary/mod_by_zero/by_identifier/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mod_by_zero/by_identifier/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a % b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/mat2x4-mat4x2/f32.wgsl.expected.glsl b/test/expressions/binary/mul/mat2x4-mat4x2/f32.wgsl.expected.glsl
index 36ae96a..e37618d 100644
--- a/test/expressions/binary/mul/mat2x4-mat4x2/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/mat2x4-mat4x2/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   mat4 r = (a * b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/mat3x2-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/mul/mat3x2-vec3/f32.wgsl.expected.glsl
index e494482..16350dc 100644
--- a/test/expressions/binary/mul/mat3x2-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/mat3x2-vec3/f32.wgsl.expected.glsl
@@ -15,8 +15,8 @@
   vec2 x = (data.matrix * data.vector);
   return;
 }
+
 void main() {
   tint_symbol();
 }
 
-
diff --git a/test/expressions/binary/mul/mat3x3-mat3x3/f32.wgsl.expected.glsl b/test/expressions/binary/mul/mat3x3-mat3x3/f32.wgsl.expected.glsl
index 924136f..dec5c80 100644
--- a/test/expressions/binary/mul/mat3x3-mat3x3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/mat3x3-mat3x3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   mat3 r = (a * b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/mat3x3-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/mul/mat3x3-vec3/f32.wgsl.expected.glsl
index b1959cb..65c991c 100644
--- a/test/expressions/binary/mul/mat3x3-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/mat3x3-vec3/f32.wgsl.expected.glsl
@@ -15,8 +15,8 @@
   vec3 x = (data.matrix * data.vector);
   return;
 }
+
 void main() {
   tint_symbol();
 }
 
-
diff --git a/test/expressions/binary/mul/mat4x2-mat2x4/f32.wgsl.expected.glsl b/test/expressions/binary/mul/mat4x2-mat2x4/f32.wgsl.expected.glsl
index 2596862..92bdac6 100644
--- a/test/expressions/binary/mul/mat4x2-mat2x4/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/mat4x2-mat2x4/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   mat2 r = (a * b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/scalar-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/mul/scalar-scalar/f32.wgsl.expected.glsl
index 1629327..094d946 100644
--- a/test/expressions/binary/mul/scalar-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/scalar-scalar/f32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   float r = (1.0f * 2.0f);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/mul/scalar-scalar/i32.wgsl.expected.glsl
index 917ae68..6fcda38 100644
--- a/test/expressions/binary/mul/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/scalar-scalar/i32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   int r = (1 * 2);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/mul/scalar-scalar/u32.wgsl.expected.glsl
index 22b2997..6bc6361 100644
--- a/test/expressions/binary/mul/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/scalar-scalar/u32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   uint r = (1u * 2u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/scalar-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/mul/scalar-vec3/f32.wgsl.expected.glsl
index 9c4bb5b..1e77318 100644
--- a/test/expressions/binary/mul/scalar-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/scalar-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a * b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/scalar-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/mul/scalar-vec3/i32.wgsl.expected.glsl
index b3e5917..9ccdf10 100644
--- a/test/expressions/binary/mul/scalar-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/scalar-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a * b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/scalar-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/mul/scalar-vec3/u32.wgsl.expected.glsl
index 2d2fbf7..95d55a2 100644
--- a/test/expressions/binary/mul/scalar-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/scalar-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a * b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/vec3-mat3x3/f32.wgsl.expected.glsl b/test/expressions/binary/mul/vec3-mat3x3/f32.wgsl.expected.glsl
index 3603b2e..19b9f42 100644
--- a/test/expressions/binary/mul/vec3-mat3x3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/vec3-mat3x3/f32.wgsl.expected.glsl
@@ -15,8 +15,8 @@
   vec3 x = (data.vector * data.matrix);
   return;
 }
+
 void main() {
   tint_symbol();
 }
 
-
diff --git a/test/expressions/binary/mul/vec3-mat4x3/f32.wgsl.expected.glsl b/test/expressions/binary/mul/vec3-mat4x3/f32.wgsl.expected.glsl
index 2805876..889c660 100644
--- a/test/expressions/binary/mul/vec3-mat4x3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/vec3-mat4x3/f32.wgsl.expected.glsl
@@ -15,8 +15,8 @@
   vec4 x = (data.vector * data.matrix);
   return;
 }
+
 void main() {
   tint_symbol();
 }
 
-
diff --git a/test/expressions/binary/mul/vec3-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/mul/vec3-scalar/f32.wgsl.expected.glsl
index 68aadcc..a96dd5b 100644
--- a/test/expressions/binary/mul/vec3-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/vec3-scalar/f32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   vec3 r = (a * 4.0f);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/vec3-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/mul/vec3-scalar/i32.wgsl.expected.glsl
index 7e33049..83736fb 100644
--- a/test/expressions/binary/mul/vec3-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/vec3-scalar/i32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   ivec3 r = (a * 4);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/vec3-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/mul/vec3-scalar/u32.wgsl.expected.glsl
index 9c19c28..d08bd4a 100644
--- a/test/expressions/binary/mul/vec3-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/vec3-scalar/u32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   uvec3 r = (a * 4u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/vec3-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/mul/vec3-vec3/f32.wgsl.expected.glsl
index fdfb8b4..e99d96f 100644
--- a/test/expressions/binary/mul/vec3-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/vec3-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a * b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/mul/vec3-vec3/i32.wgsl.expected.glsl
index bd7f2b7..2af834d 100644
--- a/test/expressions/binary/mul/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a * b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/mul/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/mul/vec3-vec3/u32.wgsl.expected.glsl
index 20ed770..889cd57 100644
--- a/test/expressions/binary/mul/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/mul/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a * b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/right-shift/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/right-shift/scalar-scalar/i32.wgsl.expected.glsl
index 040542f..6d118f1 100644
--- a/test/expressions/binary/right-shift/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/right-shift/scalar-scalar/i32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   int r = (1 >> 2u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/right-shift/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/right-shift/scalar-scalar/u32.wgsl.expected.glsl
index 7eeeb71..bd44d7d 100644
--- a/test/expressions/binary/right-shift/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/right-shift/scalar-scalar/u32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   uint r = (1u >> 2u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/right-shift/vector-vector/i32.wgsl.expected.glsl b/test/expressions/binary/right-shift/vector-vector/i32.wgsl.expected.glsl
index eb2f2ed..1429a39 100644
--- a/test/expressions/binary/right-shift/vector-vector/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/right-shift/vector-vector/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a >> b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/right-shift/vector-vector/u32.wgsl.expected.glsl b/test/expressions/binary/right-shift/vector-vector/u32.wgsl.expected.glsl
index e62bc29..7c63c6d 100644
--- a/test/expressions/binary/right-shift/vector-vector/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/right-shift/vector-vector/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a >> b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/sub/mat3x3-mat3x3/f32.wgsl.expected.glsl b/test/expressions/binary/sub/mat3x3-mat3x3/f32.wgsl.expected.glsl
index 358b664..92c2f6c 100644
--- a/test/expressions/binary/sub/mat3x3-mat3x3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/sub/mat3x3-mat3x3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   mat3 r = (a - b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/sub/scalar-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/sub/scalar-scalar/f32.wgsl.expected.glsl
index 116ab47..7b84b8f 100644
--- a/test/expressions/binary/sub/scalar-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/sub/scalar-scalar/f32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   float r = (1.0f - 2.0f);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/sub/scalar-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/sub/scalar-scalar/i32.wgsl.expected.glsl
index 01bf2df..f0334a1 100644
--- a/test/expressions/binary/sub/scalar-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/sub/scalar-scalar/i32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   int r = (1 - 2);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/sub/scalar-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/sub/scalar-scalar/u32.wgsl.expected.glsl
index 682d1bf..d4f1aff 100644
--- a/test/expressions/binary/sub/scalar-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/sub/scalar-scalar/u32.wgsl.expected.glsl
@@ -6,8 +6,8 @@
   uint r = (1u - 2u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/sub/scalar-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/sub/scalar-vec3/f32.wgsl.expected.glsl
index 67f29c6..9e497a0 100644
--- a/test/expressions/binary/sub/scalar-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/sub/scalar-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a - b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/sub/scalar-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/sub/scalar-vec3/i32.wgsl.expected.glsl
index 66d19e2..f655d71 100644
--- a/test/expressions/binary/sub/scalar-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/sub/scalar-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a - b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/sub/scalar-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/sub/scalar-vec3/u32.wgsl.expected.glsl
index e23b5c6..1474d6c 100644
--- a/test/expressions/binary/sub/scalar-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/sub/scalar-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a - b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/sub/vec3-scalar/f32.wgsl.expected.glsl b/test/expressions/binary/sub/vec3-scalar/f32.wgsl.expected.glsl
index b2a2318..dbfdc78 100644
--- a/test/expressions/binary/sub/vec3-scalar/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/sub/vec3-scalar/f32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   vec3 r = (a - 4.0f);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/sub/vec3-scalar/i32.wgsl.expected.glsl b/test/expressions/binary/sub/vec3-scalar/i32.wgsl.expected.glsl
index 225c732..1d34062 100644
--- a/test/expressions/binary/sub/vec3-scalar/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/sub/vec3-scalar/i32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   ivec3 r = (a - 4);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/sub/vec3-scalar/u32.wgsl.expected.glsl b/test/expressions/binary/sub/vec3-scalar/u32.wgsl.expected.glsl
index 23e6c8a..35eed7d 100644
--- a/test/expressions/binary/sub/vec3-scalar/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/sub/vec3-scalar/u32.wgsl.expected.glsl
@@ -7,8 +7,8 @@
   uvec3 r = (a - 4u);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/sub/vec3-vec3/f32.wgsl.expected.glsl b/test/expressions/binary/sub/vec3-vec3/f32.wgsl.expected.glsl
index 88ca974..2f73e34 100644
--- a/test/expressions/binary/sub/vec3-vec3/f32.wgsl.expected.glsl
+++ b/test/expressions/binary/sub/vec3-vec3/f32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   vec3 r = (a - b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/sub/vec3-vec3/i32.wgsl.expected.glsl b/test/expressions/binary/sub/vec3-vec3/i32.wgsl.expected.glsl
index 13aca0a8..8869edf 100644
--- a/test/expressions/binary/sub/vec3-vec3/i32.wgsl.expected.glsl
+++ b/test/expressions/binary/sub/vec3-vec3/i32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   ivec3 r = (a - b);
   return;
 }
+
 void main() {
   f();
 }
 
-
diff --git a/test/expressions/binary/sub/vec3-vec3/u32.wgsl.expected.glsl b/test/expressions/binary/sub/vec3-vec3/u32.wgsl.expected.glsl
index 5495326..64053c8 100644
--- a/test/expressions/binary/sub/vec3-vec3/u32.wgsl.expected.glsl
+++ b/test/expressions/binary/sub/vec3-vec3/u32.wgsl.expected.glsl
@@ -8,8 +8,8 @@
   uvec3 r = (a - b);
   return;
 }
+
 void main() {
   f();
 }
 
-
