diff --git a/src/vulkan/util/vk_util.h b/src/vulkan/util/vk_util.h index 019ab5bf793..7a33e77def3 100644 --- a/src/vulkan/util/vk_util.h +++ b/src/vulkan/util/vk_util.h @@ -278,8 +278,14 @@ vk_spec_info_to_nir_spirv(const VkSpecializationInfo *spec_info, #define STACK_ARRAY_SIZE 8 +#ifdef __cplusplus +#define STACK_ARRAY_ZERO_INIT {} +#else +#define STACK_ARRAY_ZERO_INIT {0} +#endif + #define STACK_ARRAY(type, name, size) \ - type _stack_##name[STACK_ARRAY_SIZE] = {0}; \ + type _stack_##name[STACK_ARRAY_SIZE] = STACK_ARRAY_ZERO_INIT; \ type *const name = \ ((size) <= STACK_ARRAY_SIZE ? _stack_##name : (type *)malloc((size) * sizeof(type)))