SKIP: FAILED

; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 30
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize
               OpEntryPoint Fragment %fragment_main "fragment_main"
               OpEntryPoint GLCompute %compute_main "compute_main"
               OpExecutionMode %fragment_main OriginUpperLeft
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpName %tint_pointsize "tint_pointsize"
               OpName %arg_0 "arg_0"
               OpName %textureStore_7cec8d "textureStore_7cec8d"
               OpName %vertex_main "vertex_main"
               OpName %fragment_main "fragment_main"
               OpName %compute_main "compute_main"
               OpDecorate %tint_pointsize BuiltIn PointSize
               OpDecorate %arg_0 NonReadable
               OpDecorate %arg_0 DescriptorSet 1
               OpDecorate %arg_0 Binding 0
      %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
          %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
        %int = OpTypeInt 32 1
          %7 = OpTypeImage %int 2D 0 1 0 2 Rgba32i
%_ptr_UniformConstant_7 = OpTypePointer UniformConstant %7
      %arg_0 = OpVariable %_ptr_UniformConstant_7 UniformConstant
       %void = OpTypeVoid
          %9 = OpTypeFunction %void
      %v3int = OpTypeVector %int 3
      %int_1 = OpConstant %int 1
         %17 = OpConstantComposite %v3int %int_1
      %v4int = OpTypeVector %int 4
         %19 = OpConstantNull %v4int
    %float_1 = OpConstant %float 1
%textureStore_7cec8d = OpFunction %void None %9
         %12 = OpLabel
         %14 = OpLoad %7 %arg_0
               OpImageWrite %14 %17 %19
               OpReturn
               OpFunctionEnd
%vertex_main = OpFunction %void None %9
         %21 = OpLabel
               OpStore %tint_pointsize %float_1
         %23 = OpFunctionCall %void %textureStore_7cec8d
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %9
         %25 = OpLabel
         %26 = OpFunctionCall %void %textureStore_7cec8d
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %9
         %28 = OpLabel
         %29 = OpFunctionCall %void %textureStore_7cec8d
               OpReturn
               OpFunctionEnd


Validation Failure:
1:1: OpConstantComposite Constituent <id> count does not match Result Type <id> '15[%v3int]'s vector component count.
  %17 = OpConstantComposite %v3int %int_1

