diff --git a/src/Magnum/Vk/DescriptorSetLayout.cpp b/src/Magnum/Vk/DescriptorSetLayout.cpp index 6e0858432..c6a9becd8 100644 --- a/src/Magnum/Vk/DescriptorSetLayout.cpp +++ b/src/Magnum/Vk/DescriptorSetLayout.cpp @@ -123,7 +123,9 @@ DescriptorSetLayoutCreateInfo::DescriptorSetLayoutCreateInfo(const Containers::A bindingsCopy[i] = b; if(b->pImmutableSamplers) { Utility::copy( - {b->pImmutableSamplers, b->descriptorCount}, + /* Just {} makes MSVC (and clang-cl!!) pick ArrayView + for some reason */ + Containers::arrayView(b->pImmutableSamplers, b->descriptorCount), immutableSamplersCopy.slice(immutableSamplerOffset, immutableSamplerOffset + b->descriptorCount)); bindingsCopy[i].pImmutableSamplers = immutableSamplersCopy + immutableSamplerOffset; immutableSamplerOffset += b->descriptorCount;