scripts:Update Validation IDs for spec 1.0.50
authorTobin Ehlis <tobine@google.com>
Mon, 22 May 2017 16:56:39 +0000 (10:56 -0600)
committerTobin Ehlis <tobine@google.com>
Tue, 23 May 2017 19:55:16 +0000 (13:55 -0600)
I'm attempting to migrate to the new VUIDs that are integrated into the
spec this week so this will hopefully be the last update of this type.

Migration plan is:
-Update existing VUID database to include new, integrated, string VUIDs
-Update VUID db to include core/ext data from json
-Update links/messages in VUIDs
-Move all old VUIDs in the source to use new VUIDs

Command to perform this current update was:
python spec.py -update -remap 3076-2049,2

And I manually restored 911 & 912 which are in the core spec but not in
the extension spec.

layers/vk_validation_error_database.txt
layers/vk_validation_error_messages.h

index 76e9047..9be4c86 100644 (file)
@@ -16,7 +16,6 @@ VALIDATION_ERROR_00004~^~N~^~Unknown~^~vkCreateInstance~^~For more information r
 VALIDATION_ERROR_00005~^~N~^~Unknown~^~vkCreateInstance~^~For more information refer to Vulkan Spec Section '3.2. Instances' which states 'If pAllocator is not NULL, pAllocator must be a pointer to a valid VkAllocationCallbacks structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkCreateInstance)~^~implicit, A bad pointer can cause the loader to seg fault. Unfortunately, the validity of the allocator is hard to determine. The structure does not contain an sType and is not created by the Vulkan API. We could try to catch an access violation exception but the loader is written in C, which does not support exceptions. It's not clear if this could be validated in a layer before loader consumption. We could also try to install a signal handler in the loader.
 VALIDATION_ERROR_00006~^~N~^~Unknown~^~vkCreateInstance~^~For more information refer to Vulkan Spec Section '3.2. Instances' which states 'pInstance must be a pointer to a VkInstance handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkCreateInstance)~^~implicit, How should this be validated? Aside from insidious type-casting, the type will be validated by the compiler. The instance has not been created yet and will likely have no presence in the layers.
 VALIDATION_ERROR_00007~^~N~^~Unknown~^~vkCreateInstance~^~For more information refer to Vulkan Spec Section '3.2. Instances' which states 'sType must be VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkInstanceCreateInfo)~^~implicit, TBD in parameter validation layer.
-VALIDATION_ERROR_00008~^~N~^~Unknown~^~vkCreateInstance~^~For more information refer to Vulkan Spec Section '3.2. Instances' which states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkInstanceCreateInfo)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_00009~^~N~^~Unknown~^~vkCreateInstance~^~For more information refer to Vulkan Spec Section '3.2. Instances' which states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkInstanceCreateInfo)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_00010~^~N~^~Unknown~^~vkCreateInstance~^~For more information refer to Vulkan Spec Section '3.2. Instances' which states 'If pApplicationInfo is not NULL, pApplicationInfo must be a pointer to a valid VkApplicationInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkInstanceCreateInfo)~^~implicit
 VALIDATION_ERROR_00011~^~N~^~Unknown~^~vkCreateInstance~^~For more information refer to Vulkan Spec Section '3.2. Instances' which states 'If enabledLayerCount is not 0, ppEnabledLayerNames must be a pointer to an array of enabledLayerCount null-terminated strings' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkInstanceCreateInfo)~^~implicit
@@ -722,8 +721,8 @@ VALIDATION_ERROR_00764~^~N~^~Unknown~^~vkCreateImageView~^~For more information
 VALIDATION_ERROR_00765~^~N~^~Unknown~^~vkCreateImageView~^~For more information refer to Vulkan Spec Section '11.5. Image Views' which states 'format must be a valid VkFormat value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewCreateInfo-subResourceRange-01021)~^~implicit
 VALIDATION_ERROR_00766~^~N~^~Unknown~^~vkCreateImageView~^~For more information refer to Vulkan Spec Section '11.5. Image Views' which states 'components must be a valid VkComponentMapping structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewCreateInfo-subResourceRange-01021)~^~implicit
 VALIDATION_ERROR_00767~^~N~^~Unknown~^~vkCreateImageView~^~For more information refer to Vulkan Spec Section '11.5. Image Views' which states 'subresourceRange must be a valid VkImageSubresourceRange structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewCreateInfo-subResourceRange-01021)~^~implicit
-VALIDATION_ERROR_00768~^~Y~^~ImageViewSubresourceRangeTests,InvalidBarriers,ClearColorImageWithBadRange,ClearDepthStencilWithBadRange~^~vkCreateImageView~^~For more information refer to Vulkan Spec Section '11.5. Image Views' which states 'If levelCount is not VK_REMAINING_MIP_LEVELS, levelCount must be non-zero and (baseMipLevel + levelCount) must be less than or equal to the mipLevels specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageSubresourceRange)~^~
-VALIDATION_ERROR_00769~^~Y~^~None~^~vkCreateImageView~^~For more information refer to Vulkan Spec Section '11.5. Image Views' which states 'If the imageType specified in VkImageCreateInfo when the image was created was VK_IMAGE_TYPE_3D and the image view is created with the viewType of VkImageViewCreateInfo set to VK_IMAGE_VIEW_TYPE_2D_ARRAY then layerCount must be VK_REMAINING_ARRAY_LAYERS, or layerCount must be non-zero and (baseArrayLayer + layerCount) must be less than or equal to the extent.depth specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageSubresourceRange)~^~
+VALIDATION_ERROR_00768~^~Y~^~ImageViewSubresourceRangeTests,InvalidBarriers,ClearColorImageWithBadRange,ClearDepthStencilWithBadRange~^~vkCreateImageView~^~For more information refer to Vulkan Spec Section '11.5. Image Views' which states 'If levelCount is not VK_REMAINING_MIP_LEVELS, levelCount must be non-zero and (baseMipLevel + levelCount) must be less than or equal to the mipLevels specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageAspectFlagBits)~^~
+VALIDATION_ERROR_00769~^~Y~^~None~^~vkCreateImageView~^~For more information refer to Vulkan Spec Section '11.5. Image Views' which states 'If the imageType specified in VkImageCreateInfo when the image was created was VK_IMAGE_TYPE_3D and the image view is created with the viewType of VkImageViewCreateInfo set to VK_IMAGE_VIEW_TYPE_2D_ARRAY then layerCount must be VK_REMAINING_ARRAY_LAYERS, or layerCount must be non-zero and (baseArrayLayer + layerCount) must be less than or equal to the extent.depth specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageAspectFlagBits)~^~
 VALIDATION_ERROR_00770~^~N~^~Unknown~^~vkCreateImageView~^~For more information refer to Vulkan Spec Section '11.5. Image Views' which states 'aspectMask must be a valid combination of VkImageAspectFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageSubresourceRange-imageType-01025)~^~implicit
 VALIDATION_ERROR_00771~^~N~^~Unknown~^~vkCreateImageView~^~For more information refer to Vulkan Spec Section '11.5. Image Views' which states 'aspectMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageSubresourceRange-imageType-01025)~^~implicit
 VALIDATION_ERROR_00772~^~N~^~Unknown~^~vkCreateImageView~^~For more information refer to Vulkan Spec Section '11.5. Image Views' which states 'r must be a valid VkComponentSwizzle value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkComponentSwizzle)~^~implicit
@@ -1887,10 +1886,9 @@ VALIDATION_ERROR_02029~^~N~^~Unknown~^~vkCreateDebugReportCallbackEXT~^~For more
 VALIDATION_ERROR_02030~^~N~^~Unknown~^~vkCreateDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pCreateInfo must be a pointer to a valid VkDebugReportCallbackCreateInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkCreateDebugReportCallbackEXT)~^~implicit
 VALIDATION_ERROR_02031~^~N~^~Unknown~^~vkCreateDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'If pAllocator is not NULL, pAllocator must be a pointer to a valid VkAllocationCallbacks structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkCreateDebugReportCallbackEXT)~^~implicit
 VALIDATION_ERROR_02032~^~N~^~Unknown~^~vkCreateDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pCallback must be a pointer to a VkDebugReportCallbackEXT handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkCreateDebugReportCallbackEXT)~^~implicit
-VALIDATION_ERROR_02033~^~N~^~Unknown~^~vkCreateDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'sType must be VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkDebugReportFlagBitsEXT)~^~implicit, TBD in parameter validation layer.
-VALIDATION_ERROR_02034~^~N~^~Unknown~^~vkCreateDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkDebugReportFlagBitsEXT)~^~implicit, TBD in parameter validation layer.
-VALIDATION_ERROR_02035~^~N~^~Unknown~^~vkCreateDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'flags must be a valid combination of VkDebugReportFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkDebugReportFlagBitsEXT)~^~implicit, TBD in parameter validation layer.
-VALIDATION_ERROR_02036~^~N~^~Unknown~^~vkCreateDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'flags must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkDebugReportFlagBitsEXT)~^~implicit
+VALIDATION_ERROR_02033~^~N~^~Unknown~^~vkCreateDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'sType must be VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-pfnCallback-01385)~^~implicit, TBD in parameter validation layer.
+VALIDATION_ERROR_02034~^~N~^~Unknown~^~vkCreateDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-pfnCallback-01385)~^~implicit, TBD in parameter validation layer.
+VALIDATION_ERROR_02035~^~N~^~Unknown~^~vkCreateDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'flags must be a valid combination of VkDebugReportFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-pfnCallback-01385)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_02040~^~N~^~Unknown~^~vkDebugReportMessageEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'object must be a Vulkan object or VK_NULL_HANDLE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkDebugReportMessageEXT)~^~
 VALIDATION_ERROR_02043~^~N~^~Unknown~^~vkDebugReportMessageEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'instance must be a valid VkInstance handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDebugReportMessageEXT-object-01241)~^~implicit
 VALIDATION_ERROR_02044~^~N~^~Unknown~^~vkDebugReportMessageEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'flags must be a valid combination of VkDebugReportFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDebugReportMessageEXT-object-01241)~^~implicit, TBD in parameter validation layer.
@@ -1898,8 +1896,8 @@ VALIDATION_ERROR_02045~^~N~^~Unknown~^~vkDebugReportMessageEXT~^~For more inform
 VALIDATION_ERROR_02046~^~N~^~Unknown~^~vkDebugReportMessageEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'objectType must be a valid VkDebugReportObjectTypeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDebugReportMessageEXT-object-01241)~^~implicit
 VALIDATION_ERROR_02047~^~N~^~Unknown~^~vkDebugReportMessageEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pLayerPrefix must be a null-terminated string' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDebugReportMessageEXT-object-01241)~^~implicit
 VALIDATION_ERROR_02048~^~N~^~Unknown~^~vkDebugReportMessageEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pMessage must be a null-terminated string' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDebugReportMessageEXT-object-01241)~^~implicit
-VALIDATION_ERROR_02049~^~Y~^~Unknown~^~vkDestroyDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'If VkAllocationCallbacks were provided when instance was created, a compatible set of callbacks must be provided here' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkDestroyDebugReportCallbackEXT)~^~
-VALIDATION_ERROR_02050~^~Y~^~Unknown~^~vkDestroyDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'If no VkAllocationCallbacks were provided when instance was created, pAllocator must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkDestroyDebugReportCallbackEXT)~^~
+VALIDATION_ERROR_02049~^~Y~^~Unknown~^~vkDestroyDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'If VkAllocationCallbacks were provided when callback was created, a compatible set of callbacks must be provided here' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkDestroyDebugReportCallbackEXT)~^~
+VALIDATION_ERROR_02050~^~Y~^~Unknown~^~vkDestroyDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'If no VkAllocationCallbacks were provided when callback was created, pAllocator must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkDestroyDebugReportCallbackEXT)~^~
 VALIDATION_ERROR_02051~^~N~^~Unknown~^~vkDestroyDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'instance must be a valid VkInstance handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDestroyDebugReportCallbackEXT-instance-01243)~^~implicit
 VALIDATION_ERROR_02052~^~N~^~Unknown~^~vkDestroyDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'callback must be a valid VkDebugReportCallbackEXT handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDestroyDebugReportCallbackEXT-instance-01243)~^~implicit
 VALIDATION_ERROR_02053~^~N~^~Unknown~^~vkDestroyDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'If pAllocator is not NULL, pAllocator must be a pointer to a valid VkAllocationCallbacks structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDestroyDebugReportCallbackEXT-instance-01243)~^~implicit
@@ -2595,7 +2593,6 @@ VALIDATION_ERROR_02781~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~For more informati
 VALIDATION_ERROR_02787~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~For more information refer to Vulkan Spec Section '6.7.3. Image Memory Barriers' which states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, dstQueueFamilyIndex must also be VK_QUEUE_FAMILY_IGNORED.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageMemoryBarrier)~^~
 VALIDATION_ERROR_02788~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~For more information refer to Vulkan Spec Section '6.7.3. Image Memory Barriers' which states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHX (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageMemoryBarrier)~^~
 VALIDATION_ERROR_02789~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~For more information refer to Vulkan Spec Section '6.7.3. Image Memory Barriers' which states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and dstQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHX (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageMemoryBarrier)~^~
-VALIDATION_ERROR_02790~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~For more information refer to Vulkan Spec Section '6.7.3. Image Memory Barriers' which states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE, srcQueueFamilyIndex and dstQueueFamilyIndex must either both be VK_QUEUE_FAMILY_IGNORED, or both be a valid queue family (see Queue Family Properties)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageMemoryBarrier)~^~
 VALIDATION_ERROR_02791~^~N~^~Unknown~^~vkCmdPipelineBarrier~^~For more information refer to Vulkan Spec Section '6.7.3. Image Memory Barriers' which states 'subresourceRange must be a valid image subresource range for the image (see Image Views)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageMemoryBarrier)~^~
 VALIDATION_ERROR_02792~^~N~^~Unknown~^~vkCreateRenderPass~^~For more information refer to Vulkan Spec Section '7.1. Render Pass Creation' which states 'If subpassCount is not zero, subpassCount must be equal to the subpassCount in the VkRenderPassCreateInfo structure at the start of the chain' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkRenderPassMultiviewCreateInfoKHX)~^~
 VALIDATION_ERROR_02793~^~N~^~Unknown~^~vkCreateRenderPass~^~For more information refer to Vulkan Spec Section '7.1. Render Pass Creation' which states 'If dependencyCount is not zero, dependencyCount must be equal to the dependencyCount in the VkRenderPassCreateInfo structure at the start of the chain' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkRenderPassMultiviewCreateInfoKHX)~^~
@@ -2734,7 +2731,7 @@ VALIDATION_ERROR_02927~^~N~^~Unknown~^~vkCreateImage~^~For more information refe
 VALIDATION_ERROR_02928~^~N~^~Unknown~^~vkCreateImage~^~For more information refer to Vulkan Spec Section '11.3. Images' which states 'sType must be VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHX' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageSwapchainCreateInfoKHX-swapchain-00995)~^~implicit
 VALIDATION_ERROR_02929~^~N~^~Unknown~^~vkCreateImage~^~For more information refer to Vulkan Spec Section '11.3. Images' which states 'If swapchain is not VK_NULL_HANDLE, swapchain must be a valid VkSwapchainKHR handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageSwapchainCreateInfoKHX-swapchain-00995)~^~implicit
 VALIDATION_ERROR_02930~^~N~^~Unknown~^~vkCreateImageView~^~For more information refer to Vulkan Spec Section '11.5. Image Views' which states 'subresourceRange must be a valid image subresource range for image (see Image Views)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageViewCreateInfo)~^~
-VALIDATION_ERROR_02931~^~Y~^~ImageViewSubresourceRangeTests,InvalidBarriers,ClearColorImageWithBadRange,ClearDepthStencilWithBadRange~^~vkCreateImageView~^~For more information refer to Vulkan Spec Section '11.5. Image Views' which states 'If the imageType specified in VkImageCreateInfo when the image was created was not VK_IMAGE_TYPE_3D or the image view is not created with the viewType of VkImageViewCreateInfo set to VK_IMAGE_VIEW_TYPE_2D_ARRAY then layerCount must be VK_REMAINING_ARRAY_LAYERS, or layerCount must be non-zero and (baseArrayLayer + layerCount) must be less than or equal to the arrayLayers specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageSubresourceRange)~^~
+VALIDATION_ERROR_02931~^~Y~^~ImageViewSubresourceRangeTests,InvalidBarriers,ClearColorImageWithBadRange,ClearDepthStencilWithBadRange~^~vkCreateImageView~^~For more information refer to Vulkan Spec Section '11.5. Image Views' which states 'If the imageType specified in VkImageCreateInfo when the image was created was not VK_IMAGE_TYPE_3D or the image view is not created with the viewType of VkImageViewCreateInfo set to VK_IMAGE_VIEW_TYPE_2D_ARRAY then layerCount must be VK_REMAINING_ARRAY_LAYERS, or layerCount must be non-zero and (baseArrayLayer + layerCount) must be less than or equal to the arrayLayers specified in VkImageCreateInfo when the image was created' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageAspectFlagBits)~^~
 VALIDATION_ERROR_02932~^~N~^~Unknown~^~vkBindBufferMemory2KHX~^~For more information refer to Vulkan Spec Section '11.6. Resource Memory Association' which states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkBindBufferMemory2KHX)~^~implicit
 VALIDATION_ERROR_02933~^~N~^~Unknown~^~vkBindBufferMemory2KHX~^~For more information refer to Vulkan Spec Section '11.6. Resource Memory Association' which states 'pBindInfos must be a pointer to an array of bindInfoCount valid VkBindBufferMemoryInfoKHX structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkBindBufferMemory2KHX)~^~implicit
 VALIDATION_ERROR_02934~^~N~^~Unknown~^~vkBindBufferMemory2KHX~^~For more information refer to Vulkan Spec Section '11.6. Resource Memory Association' which states 'bindInfoCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkBindBufferMemory2KHX)~^~implicit
@@ -3093,4 +3090,6 @@ VALIDATION_ERROR_03294~^~Y~^~Unknown~^~vkGetSwapchainStatusKHR~^~For more inform
 VALIDATION_ERROR_03295~^~Y~^~None~^~vkCreateSwapchainKHR~^~For more information refer to Vulkan Spec Section '30.8. WSI Swapchain' which states 'minImageCount must be 1 if presentMode is either VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR or VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkSwapchainCreateFlagBitsKHR)~^~
 VALIDATION_ERROR_03296~^~N~^~Unknown~^~vkCreateSwapchainKHR~^~For more information refer to Vulkan Spec Section '30.8. WSI Swapchain' which states 'imageUsage must be a subset of the supported usage flags present in the sharedPresentSupportedUsageFlags member of the VkSharedPresentSurfaceCapabilitiesKHR structure returned by vkGetPhysicalDeviceSurfaceCapabilities2KHR for the surface if presentMode is set to either VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR or VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkSwapchainCreateFlagBitsKHR)~^~
 VALIDATION_ERROR_03297~^~N~^~Unknown~^~vkQueuePresentKHR~^~For more information refer to Vulkan Spec Section '30.8. WSI Swapchain' which states 'swapchainCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentTimesInfoGOOGLE-swapchainCount-01247)~^~implicit
+VALIDATION_ERROR_03298~^~N~^~Unknown~^~vkCreateInstance~^~For more information refer to Vulkan Spec Section '3.2. Instances' which states 'pNext must be NULL or a pointer to a valid instance of VkDebugReportCallbackCreateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkInstanceCreateInfo)~^~implicit
+VALIDATION_ERROR_03299~^~N~^~Unknown~^~vkCreateDebugReportCallbackEXT~^~For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pfnCallback must be a valid PFN_vkDebugReportCallbackEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkDebugReportFlagBitsEXT)~^~
 
index b50d0b9..5067403 100644 (file)
@@ -42,7 +42,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
     VALIDATION_ERROR_00005 = 5,
     VALIDATION_ERROR_00006 = 6,
     VALIDATION_ERROR_00007 = 7,
-    VALIDATION_ERROR_00008 = 8,
     VALIDATION_ERROR_00009 = 9,
     VALIDATION_ERROR_00010 = 10,
     VALIDATION_ERROR_00011 = 11,
@@ -1916,7 +1915,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
     VALIDATION_ERROR_02033 = 2033,
     VALIDATION_ERROR_02034 = 2034,
     VALIDATION_ERROR_02035 = 2035,
-    VALIDATION_ERROR_02036 = 2036,
     VALIDATION_ERROR_02040 = 2040,
     VALIDATION_ERROR_02043 = 2043,
     VALIDATION_ERROR_02044 = 2044,
@@ -2621,7 +2619,6 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
     VALIDATION_ERROR_02787 = 2787,
     VALIDATION_ERROR_02788 = 2788,
     VALIDATION_ERROR_02789 = 2789,
-    VALIDATION_ERROR_02790 = 2790,
     VALIDATION_ERROR_02791 = 2791,
     VALIDATION_ERROR_02792 = 2792,
     VALIDATION_ERROR_02793 = 2793,
@@ -3119,7 +3116,9 @@ enum UNIQUE_VALIDATION_ERROR_CODE {
     VALIDATION_ERROR_03295 = 3295,
     VALIDATION_ERROR_03296 = 3296,
     VALIDATION_ERROR_03297 = 3297,
-    VALIDATION_ERROR_MAX_ENUM = 3298,
+    VALIDATION_ERROR_03298 = 3298,
+    VALIDATION_ERROR_03299 = 3299,
+    VALIDATION_ERROR_MAX_ENUM = 3300,
 };
 
 // Mapping from unique validation error enum to the corresponding error message
@@ -3134,7 +3133,6 @@ static std::unordered_map<int, char const *const> validation_error_map{
     {VALIDATION_ERROR_00005, "For more information refer to Vulkan Spec Section '3.2. Instances' which states 'If pAllocator is not NULL, pAllocator must be a pointer to a valid VkAllocationCallbacks structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkCreateInstance)"},
     {VALIDATION_ERROR_00006, "For more information refer to Vulkan Spec Section '3.2. Instances' which states 'pInstance must be a pointer to a VkInstance handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkCreateInstance)"},
     {VALIDATION_ERROR_00007, "For more information refer to Vulkan Spec Section '3.2. Instances' which states 'sType must be VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkInstanceCreateInfo)"},
-    {VALIDATION_ERROR_00008, "For more information refer to Vulkan Spec Section '3.2. Instances' which states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkInstanceCreateInfo)"},
     {VALIDATION_ERROR_00009, "For more information refer to Vulkan Spec Section '3.2. Instances' which states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkInstanceCreateInfo)"},
     {VALIDATION_ERROR_00010, "For more information refer to Vulkan Spec Section '3.2. Instances' which states 'If pApplicationInfo is not NULL, pApplicationInfo must be a pointer to a valid VkApplicationInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkInstanceCreateInfo)"},
     {VALIDATION_ERROR_00011, "For more information refer to Vulkan Spec Section '3.2. Instances' which states 'If enabledLayerCount is not 0, ppEnabledLayerNames must be a pointer to an array of enabledLayerCount null-terminated strings' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkInstanceCreateInfo)"},
@@ -5005,10 +5003,9 @@ static std::unordered_map<int, char const *const> validation_error_map{
     {VALIDATION_ERROR_02030, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pCreateInfo must be a pointer to a valid VkDebugReportCallbackCreateInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkCreateDebugReportCallbackEXT)"},
     {VALIDATION_ERROR_02031, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'If pAllocator is not NULL, pAllocator must be a pointer to a valid VkAllocationCallbacks structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkCreateDebugReportCallbackEXT)"},
     {VALIDATION_ERROR_02032, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pCallback must be a pointer to a VkDebugReportCallbackEXT handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkCreateDebugReportCallbackEXT)"},
-    {VALIDATION_ERROR_02033, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'sType must be VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkDebugReportFlagBitsEXT)"},
-    {VALIDATION_ERROR_02034, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkDebugReportFlagBitsEXT)"},
-    {VALIDATION_ERROR_02035, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'flags must be a valid combination of VkDebugReportFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkDebugReportFlagBitsEXT)"},
-    {VALIDATION_ERROR_02036, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'flags must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkDebugReportFlagBitsEXT)"},
+    {VALIDATION_ERROR_02033, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'sType must be VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-pfnCallback-01385)"},
+    {VALIDATION_ERROR_02034, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-pfnCallback-01385)"},
+    {VALIDATION_ERROR_02035, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'flags must be a valid combination of VkDebugReportFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDebugReportCallbackCreateInfoEXT-pfnCallback-01385)"},
     {VALIDATION_ERROR_02040, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'object must be a Vulkan object or VK_NULL_HANDLE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkDebugReportMessageEXT)"},
     {VALIDATION_ERROR_02043, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'instance must be a valid VkInstance handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDebugReportMessageEXT-object-01241)"},
     {VALIDATION_ERROR_02044, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'flags must be a valid combination of VkDebugReportFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDebugReportMessageEXT-object-01241)"},
@@ -5016,8 +5013,8 @@ static std::unordered_map<int, char const *const> validation_error_map{
     {VALIDATION_ERROR_02046, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'objectType must be a valid VkDebugReportObjectTypeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDebugReportMessageEXT-object-01241)"},
     {VALIDATION_ERROR_02047, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pLayerPrefix must be a null-terminated string' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDebugReportMessageEXT-object-01241)"},
     {VALIDATION_ERROR_02048, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pMessage must be a null-terminated string' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDebugReportMessageEXT-object-01241)"},
-    {VALIDATION_ERROR_02049, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'If VkAllocationCallbacks were provided when instance was created, a compatible set of callbacks must be provided here' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkDestroyDebugReportCallbackEXT)"},
-    {VALIDATION_ERROR_02050, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'If no VkAllocationCallbacks were provided when instance was created, pAllocator must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkDestroyDebugReportCallbackEXT)"},
+    {VALIDATION_ERROR_02049, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'If VkAllocationCallbacks were provided when callback was created, a compatible set of callbacks must be provided here' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkDestroyDebugReportCallbackEXT)"},
+    {VALIDATION_ERROR_02050, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'If no VkAllocationCallbacks were provided when callback was created, pAllocator must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#vkDestroyDebugReportCallbackEXT)"},
     {VALIDATION_ERROR_02051, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'instance must be a valid VkInstance handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDestroyDebugReportCallbackEXT-instance-01243)"},
     {VALIDATION_ERROR_02052, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'callback must be a valid VkDebugReportCallbackEXT handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDestroyDebugReportCallbackEXT-instance-01243)"},
     {VALIDATION_ERROR_02053, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'If pAllocator is not NULL, pAllocator must be a pointer to a valid VkAllocationCallbacks structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDestroyDebugReportCallbackEXT-instance-01243)"},
@@ -5713,7 +5710,6 @@ static std::unordered_map<int, char const *const> validation_error_map{
     {VALIDATION_ERROR_02787, "For more information refer to Vulkan Spec Section '6.7.3. Image Memory Barriers' which states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is VK_QUEUE_FAMILY_IGNORED, dstQueueFamilyIndex must also be VK_QUEUE_FAMILY_IGNORED.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageMemoryBarrier)"},
     {VALIDATION_ERROR_02788, "For more information refer to Vulkan Spec Section '6.7.3. Image Memory Barriers' which states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and srcQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHX (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageMemoryBarrier)"},
     {VALIDATION_ERROR_02789, "For more information refer to Vulkan Spec Section '6.7.3. Image Memory Barriers' which states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE and dstQueueFamilyIndex is not VK_QUEUE_FAMILY_IGNORED, it must be a valid queue family or VK_QUEUE_FAMILY_EXTERNAL_KHX (see Queue Family Properties).' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageMemoryBarrier)"},
-    {VALIDATION_ERROR_02790, "For more information refer to Vulkan Spec Section '6.7.3. Image Memory Barriers' which states 'If image was created with a sharing mode of VK_SHARING_MODE_EXCLUSIVE, srcQueueFamilyIndex and dstQueueFamilyIndex must either both be VK_QUEUE_FAMILY_IGNORED, or both be a valid queue family (see Queue Family Properties)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageMemoryBarrier)"},
     {VALIDATION_ERROR_02791, "For more information refer to Vulkan Spec Section '6.7.3. Image Memory Barriers' which states 'subresourceRange must be a valid image subresource range for the image (see Image Views)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkImageMemoryBarrier)"},
     {VALIDATION_ERROR_02792, "For more information refer to Vulkan Spec Section '7.1. Render Pass Creation' which states 'If subpassCount is not zero, subpassCount must be equal to the subpassCount in the VkRenderPassCreateInfo structure at the start of the chain' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkRenderPassMultiviewCreateInfoKHX)"},
     {VALIDATION_ERROR_02793, "For more information refer to Vulkan Spec Section '7.1. Render Pass Creation' which states 'If dependencyCount is not zero, dependencyCount must be equal to the dependencyCount in the VkRenderPassCreateInfo structure at the start of the chain' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkRenderPassMultiviewCreateInfoKHX)"},
@@ -6211,4 +6207,6 @@ static std::unordered_map<int, char const *const> validation_error_map{
     {VALIDATION_ERROR_03295, "For more information refer to Vulkan Spec Section '30.8. WSI Swapchain' which states 'minImageCount must be 1 if presentMode is either VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR or VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkSwapchainCreateFlagBitsKHR)"},
     {VALIDATION_ERROR_03296, "For more information refer to Vulkan Spec Section '30.8. WSI Swapchain' which states 'imageUsage must be a subset of the supported usage flags present in the sharedPresentSupportedUsageFlags member of the VkSharedPresentSurfaceCapabilitiesKHR structure returned by vkGetPhysicalDeviceSurfaceCapabilities2KHR for the surface if presentMode is set to either VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR or VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkSwapchainCreateFlagBitsKHR)"},
     {VALIDATION_ERROR_03297, "For more information refer to Vulkan Spec Section '30.8. WSI Swapchain' which states 'swapchainCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentTimesInfoGOOGLE-swapchainCount-01247)"},
+    {VALIDATION_ERROR_03298, "For more information refer to Vulkan Spec Section '3.2. Instances' which states 'pNext must be NULL or a pointer to a valid instance of VkDebugReportCallbackCreateInfoEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkInstanceCreateInfo)"},
+    {VALIDATION_ERROR_03299, "For more information refer to Vulkan Spec Section '33.2. Debug Report Callbacks' which states 'pfnCallback must be a valid PFN_vkDebugReportCallbackEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VkDebugReportFlagBitsEXT)"},
 };