1cb93a386Sopenharmony_ci### Compilation failed: 2cb93a386Sopenharmony_ci 3cb93a386Sopenharmony_cierror: SPIR-V validation error: Uniform id '5' is missing Block or BufferBlock decoration. 4cb93a386Sopenharmony_ciFrom Vulkan spec, section 14.5.2: 5cb93a386Sopenharmony_ciSuch variables must be identified with a Block or BufferBlock decoration 6cb93a386Sopenharmony_ci %testBlock = OpTypeStruct %float 7cb93a386Sopenharmony_ci 8cb93a386Sopenharmony_ciOpCapability Shader 9cb93a386Sopenharmony_ci%1 = OpExtInstImport "GLSL.std.450" 10cb93a386Sopenharmony_ciOpMemoryModel Logical GLSL450 11cb93a386Sopenharmony_ciOpEntryPoint Fragment %main "main" %sk_FragColor %sk_Clockwise 12cb93a386Sopenharmony_ciOpExecutionMode %main OriginUpperLeft 13cb93a386Sopenharmony_ciOpName %testBlock "testBlock" 14cb93a386Sopenharmony_ciOpMemberName %testBlock 0 "x" 15cb93a386Sopenharmony_ciOpName %sk_FragColor "sk_FragColor" 16cb93a386Sopenharmony_ciOpName %sk_Clockwise "sk_Clockwise" 17cb93a386Sopenharmony_ciOpName %main "main" 18cb93a386Sopenharmony_ciOpMemberDecorate %testBlock 0 Offset 0 19cb93a386Sopenharmony_ciOpDecorate %_arr_testBlock_int_2 ArrayStride 16 20cb93a386Sopenharmony_ciOpDecorate %_arr_testBlock_int_2 Block 21cb93a386Sopenharmony_ciOpDecorate %3 Binding 123 22cb93a386Sopenharmony_ciOpDecorate %3 DescriptorSet 0 23cb93a386Sopenharmony_ciOpDecorate %sk_FragColor RelaxedPrecision 24cb93a386Sopenharmony_ciOpDecorate %sk_FragColor Location 0 25cb93a386Sopenharmony_ciOpDecorate %sk_FragColor Index 0 26cb93a386Sopenharmony_ciOpDecorate %sk_Clockwise BuiltIn FrontFacing 27cb93a386Sopenharmony_ciOpDecorate %24 RelaxedPrecision 28cb93a386Sopenharmony_ci%float = OpTypeFloat 32 29cb93a386Sopenharmony_ci%testBlock = OpTypeStruct %float 30cb93a386Sopenharmony_ci%int = OpTypeInt 32 1 31cb93a386Sopenharmony_ci%int_2 = OpConstant %int 2 32cb93a386Sopenharmony_ci%_arr_testBlock_int_2 = OpTypeArray %testBlock %int_2 33cb93a386Sopenharmony_ci%_ptr_Uniform__arr_testBlock_int_2 = OpTypePointer Uniform %_arr_testBlock_int_2 34cb93a386Sopenharmony_ci%3 = OpVariable %_ptr_Uniform__arr_testBlock_int_2 Uniform 35cb93a386Sopenharmony_ci%v4float = OpTypeVector %float 4 36cb93a386Sopenharmony_ci%_ptr_Output_v4float = OpTypePointer Output %v4float 37cb93a386Sopenharmony_ci%sk_FragColor = OpVariable %_ptr_Output_v4float Output 38cb93a386Sopenharmony_ci%bool = OpTypeBool 39cb93a386Sopenharmony_ci%_ptr_Input_bool = OpTypePointer Input %bool 40cb93a386Sopenharmony_ci%sk_Clockwise = OpVariable %_ptr_Input_bool Input 41cb93a386Sopenharmony_ci%void = OpTypeVoid 42cb93a386Sopenharmony_ci%17 = OpTypeFunction %void 43cb93a386Sopenharmony_ci%int_1 = OpConstant %int 1 44cb93a386Sopenharmony_ci%int_0 = OpConstant %int 0 45cb93a386Sopenharmony_ci%_ptr_Uniform_float = OpTypePointer Uniform %float 46cb93a386Sopenharmony_ci%main = OpFunction %void None %17 47cb93a386Sopenharmony_ci%18 = OpLabel 48cb93a386Sopenharmony_ci%21 = OpAccessChain %_ptr_Uniform_float %3 %int_1 %int_0 49cb93a386Sopenharmony_ci%23 = OpLoad %float %21 50cb93a386Sopenharmony_ci%24 = OpCompositeConstruct %v4float %23 %23 %23 %23 51cb93a386Sopenharmony_ciOpStore %sk_FragColor %24 52cb93a386Sopenharmony_ciOpReturn 53cb93a386Sopenharmony_ciOpFunctionEnd 54cb93a386Sopenharmony_ci 55cb93a386Sopenharmony_ci1 error 56