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