diff --git a/test/access/var/matrix.spvasm.expected.glsl b/test/access/var/matrix.spvasm.expected.glsl
index 453e9f2..de758b0 100644
--- a/test/access/var/matrix.spvasm.expected.glsl
+++ b/test/access/var/matrix.spvasm.expected.glsl
@@ -2,7 +2,7 @@
 precision mediump float;
 
 void main_1() {
-  mat3 m = mat3(vec3(0.0f, 0.0f, 0.0f), vec3(0.0f, 0.0f, 0.0f), vec3(0.0f, 0.0f, 0.0f));
+  mat3 m = mat3(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f);
   vec3 x_15 = m[1];
   float x_16 = x_15.y;
   return;
diff --git a/test/ptr_ref/access/matrix.spvasm.expected.glsl b/test/ptr_ref/access/matrix.spvasm.expected.glsl
index 8528cd5..132104a 100644
--- a/test/ptr_ref/access/matrix.spvasm.expected.glsl
+++ b/test/ptr_ref/access/matrix.spvasm.expected.glsl
@@ -2,7 +2,7 @@
 precision mediump float;
 
 void main_1() {
-  mat3 m = mat3(vec3(0.0f, 0.0f, 0.0f), vec3(0.0f, 0.0f, 0.0f), vec3(0.0f, 0.0f, 0.0f));
+  mat3 m = mat3(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f);
   m = mat3(vec3(1.0f, 2.0f, 3.0f), vec3(4.0f, 5.0f, 6.0f), vec3(7.0f, 8.0f, 9.0f));
   m[1] = vec3(5.0f, 5.0f, 5.0f);
   return;
diff --git a/test/samples/triangle.wgsl.expected.glsl b/test/samples/triangle.wgsl.expected.glsl
index 1604370..021f431 100644
--- a/test/samples/triangle.wgsl.expected.glsl
+++ b/test/samples/triangle.wgsl.expected.glsl
@@ -1,6 +1,8 @@
 #version 310 es
 precision mediump float;
 
+const vec2 pos[3] = vec2[3](vec2(0.0f, 0.5f), vec2(-0.5f, -0.5f), vec2(0.5f, -0.5f));
+
 struct tint_symbol_1 {
   uint VertexIndex;
 };
@@ -9,7 +11,6 @@
 };
 
 vec4 vtx_main_inner(uint VertexIndex) {
-  vec2 pos[3] = vec2[3](vec2(0.0f, 0.5f), vec2(-0.5f, -0.5f), vec2(0.5f, -0.5f));
   return vec4(pos[VertexIndex], 0.0f, 1.0f);
 }
 
