vk_mem_alloc.hpp provides additional functions like importVulkanFunctionsFromVolk only if VOLK_HEADER_VERSION macro is defined because it uses contents from volk.h. For header version everything is straightforward: include volk before including vma-hpp header. But there is no way for library user to insert macro state into module without manually changing global fragment of vk_mem_alloc.cppm file by including <volk/volk.h> to achieve the same result. Thus making using vma-hpp as module and volk at the same time impossible.
vk_mem_alloc.hppprovides additional functions likeimportVulkanFunctionsFromVolkonly ifVOLK_HEADER_VERSIONmacro is defined because it uses contents fromvolk.h. For header version everything is straightforward: includevolkbefore includingvma-hppheader. But there is no way for library user to insert macro state into module without manually changing global fragment ofvk_mem_alloc.cppmfile by including<volk/volk.h>to achieve the same result. Thus making usingvma-hppas module andvolkat the same time impossible.