layers: Add pNext-chain-only structs to PV codegen

Structs accessed exclusively through pNext chains were not
validated. Added this functionality, picked up about 90 VUIDs.

Change-Id: Iefaecb14d5c1941352f675e38c9dd878730b1adb
diff --git a/layers/parameter_validation.h b/layers/parameter_validation.h
index d04b676..c33f414 100644
--- a/layers/parameter_validation.h
+++ b/layers/parameter_validation.h
@@ -522,6 +522,10 @@
     return skip_call;
 }
 
+// Forward declaration for pNext validation
+bool ValidatePnextStructContents(debug_report_data *report_data, const char *api_name, const ParameterName &parameter_name,
+                                 const GenericHeader *header);
+
 /**
  * Validate a structure's pNext member.
  *
@@ -607,6 +611,8 @@
                                     allowed_struct_names, header_version, parameter_name.get_name().c_str());
                     }
                 }
+                // LUGMAL Insert pNext struct check here:
+                skip_call |= ValidatePnextStructContents(report_data, api_name, parameter_name, current);
                 current = reinterpret_cast<const GenericHeader *>(current->pNext);
             }
         }
diff --git a/layers/vk_validation_error_database.txt b/layers/vk_validation_error_database.txt
index b8d18c2..8ea92d8 100644
--- a/layers/vk_validation_error_database.txt
+++ b/layers/vk_validation_error_database.txt
@@ -390,9 +390,9 @@
 VALIDATION_ERROR_05805801~^~Y~^~Unknown~^~VkDeviceEventInfoEXT~^~VUID-VkDeviceEventInfoEXT-deviceEvent-parameter~^~(VK_EXT_display_control)~^~The spec valid usage text states 'deviceEvent must be a valid VkDeviceEventTypeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceEventInfoEXT-deviceEvent-parameter)~^~implicit
 VALIDATION_ERROR_0581c40d~^~Y~^~Unknown~^~VkDeviceEventInfoEXT~^~VUID-VkDeviceEventInfoEXT-pNext-pNext~^~(VK_EXT_display_control)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceEventInfoEXT-pNext-pNext)~^~implicit
 VALIDATION_ERROR_0582b00b~^~Y~^~Unknown~^~VkDeviceEventInfoEXT~^~VUID-VkDeviceEventInfoEXT-sType-sType~^~(VK_EXT_display_control)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceEventInfoEXT-sType-sType)~^~implicit
-VALIDATION_ERROR_05a1c40d~^~N~^~Unknown~^~VkDeviceGeneratedCommandsFeaturesNVX~^~VUID-VkDeviceGeneratedCommandsFeaturesNVX-pNext-pNext~^~(VK_NVX_device_generated_commands)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGeneratedCommandsFeaturesNVX-pNext-pNext)~^~implicit
+VALIDATION_ERROR_05a1c40d~^~Y~^~Unknown~^~VkDeviceGeneratedCommandsFeaturesNVX~^~VUID-VkDeviceGeneratedCommandsFeaturesNVX-pNext-pNext~^~(VK_NVX_device_generated_commands)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGeneratedCommandsFeaturesNVX-pNext-pNext)~^~implicit
 VALIDATION_ERROR_05a2b00b~^~Y~^~Unknown~^~VkDeviceGeneratedCommandsFeaturesNVX~^~VUID-VkDeviceGeneratedCommandsFeaturesNVX-sType-sType~^~(VK_NVX_device_generated_commands)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGeneratedCommandsFeaturesNVX-sType-sType)~^~implicit
-VALIDATION_ERROR_05c1c40d~^~N~^~Unknown~^~VkDeviceGeneratedCommandsLimitsNVX~^~VUID-VkDeviceGeneratedCommandsLimitsNVX-pNext-pNext~^~(VK_NVX_device_generated_commands)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGeneratedCommandsLimitsNVX-pNext-pNext)~^~implicit
+VALIDATION_ERROR_05c1c40d~^~Y~^~Unknown~^~VkDeviceGeneratedCommandsLimitsNVX~^~VUID-VkDeviceGeneratedCommandsLimitsNVX-pNext-pNext~^~(VK_NVX_device_generated_commands)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGeneratedCommandsLimitsNVX-pNext-pNext)~^~implicit
 VALIDATION_ERROR_05c2b00b~^~Y~^~Unknown~^~VkDeviceGeneratedCommandsLimitsNVX~^~VUID-VkDeviceGeneratedCommandsLimitsNVX-sType-sType~^~(VK_NVX_device_generated_commands)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGeneratedCommandsLimitsNVX-sType-sType)~^~implicit
 VALIDATION_ERROR_05e008bc~^~N~^~Unknown~^~VkDeviceGroupBindSparseInfo~^~VUID-VkDeviceGroupBindSparseInfo-resourceDeviceIndex-01118~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'resourceDeviceIndex and memoryDeviceIndex must both be valid device indices.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupBindSparseInfo-resourceDeviceIndex-01118)~^~
 VALIDATION_ERROR_05e008be~^~N~^~Unknown~^~VkDeviceGroupBindSparseInfo~^~VUID-VkDeviceGroupBindSparseInfo-memoryDeviceIndex-01119~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'Each memory allocation bound in this batch must have allocated an instance for memoryDeviceIndex.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupBindSparseInfo-memoryDeviceIndex-01119)~^~
@@ -403,7 +403,7 @@
 VALIDATION_ERROR_062002ee~^~N~^~Unknown~^~VkDeviceGroupDeviceCreateInfo~^~VUID-VkDeviceGroupDeviceCreateInfo-pPhysicalDevices-00375~^~(VK_VERSION_1_1,VK_KHR_device_group_creation)~^~The spec valid usage text states 'Each element of pPhysicalDevices must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupDeviceCreateInfo-pPhysicalDevices-00375)~^~
 VALIDATION_ERROR_062002f0~^~N~^~Unknown~^~VkDeviceGroupDeviceCreateInfo~^~VUID-VkDeviceGroupDeviceCreateInfo-pPhysicalDevices-00376~^~(VK_VERSION_1_1,VK_KHR_device_group_creation)~^~The spec valid usage text states 'All elements of pPhysicalDevices must be in the same device group as enumerated by vkEnumeratePhysicalDeviceGroups' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupDeviceCreateInfo-pPhysicalDevices-00376)~^~
 VALIDATION_ERROR_062002f2~^~N~^~Unknown~^~VkDeviceGroupDeviceCreateInfo~^~VUID-VkDeviceGroupDeviceCreateInfo-physicalDeviceCount-00377~^~(VK_VERSION_1_1,VK_KHR_device_group_creation)~^~The spec valid usage text states 'If physicalDeviceCount is not 0, the physicalDevice parameter of vkCreateDevice must be an element of pPhysicalDevices.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupDeviceCreateInfo-physicalDeviceCount-00377)~^~
-VALIDATION_ERROR_0621dc01~^~N~^~Unknown~^~VkDeviceGroupDeviceCreateInfo~^~VUID-VkDeviceGroupDeviceCreateInfo-pPhysicalDevices-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group_creation)~^~The spec valid usage text states 'If physicalDeviceCount is not 0, pPhysicalDevices must be a valid pointer to an array of physicalDeviceCount valid VkPhysicalDevice handles' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupDeviceCreateInfo-pPhysicalDevices-parameter)~^~implicit
+VALIDATION_ERROR_0621dc01~^~Y~^~Unknown~^~VkDeviceGroupDeviceCreateInfo~^~VUID-VkDeviceGroupDeviceCreateInfo-pPhysicalDevices-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group_creation)~^~The spec valid usage text states 'If physicalDeviceCount is not 0, pPhysicalDevices must be a valid pointer to an array of physicalDeviceCount valid VkPhysicalDevice handles' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupDeviceCreateInfo-pPhysicalDevices-parameter)~^~implicit
 VALIDATION_ERROR_0622b00b~^~N~^~Unknown~^~VkDeviceGroupDeviceCreateInfo~^~VUID-VkDeviceGroupDeviceCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_device_group_creation)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupDeviceCreateInfo-sType-sType)~^~implicit
 VALIDATION_ERROR_06400a22~^~N~^~Unknown~^~VkDeviceGroupPresentInfoKHR~^~VUID-VkDeviceGroupPresentInfoKHR-swapchainCount-01297~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'swapchainCount must equal 0 or VkPresentInfoKHR::swapchainCount' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupPresentInfoKHR-swapchainCount-01297)~^~
 VALIDATION_ERROR_06400a24~^~N~^~Unknown~^~VkDeviceGroupPresentInfoKHR~^~VUID-VkDeviceGroupPresentInfoKHR-mode-01298~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If mode is VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR, then each element of pDeviceMasks must have exactly one bit set, and the corresponding element of VkDeviceGroupPresentCapabilitiesKHR::presentMask must be non-zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupPresentInfoKHR-mode-01298)~^~
@@ -412,26 +412,26 @@
 VALIDATION_ERROR_06400a2a~^~N~^~Unknown~^~VkDeviceGroupPresentInfoKHR~^~VUID-VkDeviceGroupPresentInfoKHR-mode-01301~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If mode is VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR, then for each bit set in each element of pDeviceMasks, the corresponding element of VkDeviceGroupPresentCapabilitiesKHR::presentMask must be non-zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupPresentInfoKHR-mode-01301)~^~
 VALIDATION_ERROR_06400a2c~^~N~^~Unknown~^~VkDeviceGroupPresentInfoKHR~^~VUID-VkDeviceGroupPresentInfoKHR-pDeviceMasks-01302~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'The value of each element of pDeviceMasks must be equal to the device mask passed in VkAcquireNextImageInfoKHR::deviceMask when the image index was last acquired' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupPresentInfoKHR-pDeviceMasks-01302)~^~
 VALIDATION_ERROR_06400a2e~^~N~^~Unknown~^~VkDeviceGroupPresentInfoKHR~^~VUID-VkDeviceGroupPresentInfoKHR-mode-01303~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'mode must have exactly one bit set, and that bit must have been included in VkDeviceGroupSwapchainCreateInfoKHR::modes' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupPresentInfoKHR-mode-01303)~^~
-VALIDATION_ERROR_0640ce01~^~N~^~Unknown~^~VkDeviceGroupPresentInfoKHR~^~VUID-VkDeviceGroupPresentInfoKHR-mode-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'mode must be a valid VkDeviceGroupPresentModeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupPresentInfoKHR-mode-parameter)~^~implicit
-VALIDATION_ERROR_06414001~^~N~^~Unknown~^~VkDeviceGroupPresentInfoKHR~^~VUID-VkDeviceGroupPresentInfoKHR-pDeviceMasks-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If swapchainCount is not 0, pDeviceMasks must be a valid pointer to an array of swapchainCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupPresentInfoKHR-pDeviceMasks-parameter)~^~implicit
+VALIDATION_ERROR_0640ce01~^~Y~^~Unknown~^~VkDeviceGroupPresentInfoKHR~^~VUID-VkDeviceGroupPresentInfoKHR-mode-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'mode must be a valid VkDeviceGroupPresentModeFlagBitsKHR value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupPresentInfoKHR-mode-parameter)~^~implicit
+VALIDATION_ERROR_06414001~^~Y~^~Unknown~^~VkDeviceGroupPresentInfoKHR~^~VUID-VkDeviceGroupPresentInfoKHR-pDeviceMasks-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If swapchainCount is not 0, pDeviceMasks must be a valid pointer to an array of swapchainCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupPresentInfoKHR-pDeviceMasks-parameter)~^~implicit
 VALIDATION_ERROR_0642b00b~^~N~^~Unknown~^~VkDeviceGroupPresentInfoKHR~^~VUID-VkDeviceGroupPresentInfoKHR-sType-sType~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupPresentInfoKHR-sType-sType)~^~implicit
 VALIDATION_ERROR_06600712~^~N~^~Unknown~^~VkDeviceGroupRenderPassBeginInfo~^~VUID-VkDeviceGroupRenderPassBeginInfo-deviceMask-00905~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'deviceMask must be a valid device mask value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupRenderPassBeginInfo-deviceMask-00905)~^~
 VALIDATION_ERROR_06600714~^~N~^~Unknown~^~VkDeviceGroupRenderPassBeginInfo~^~VUID-VkDeviceGroupRenderPassBeginInfo-deviceMask-00906~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'deviceMask must not be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupRenderPassBeginInfo-deviceMask-00906)~^~
 VALIDATION_ERROR_06600716~^~N~^~Unknown~^~VkDeviceGroupRenderPassBeginInfo~^~VUID-VkDeviceGroupRenderPassBeginInfo-deviceMask-00907~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'deviceMask must be a subset of the command buffer's initial device mask' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupRenderPassBeginInfo-deviceMask-00907)~^~
 VALIDATION_ERROR_06600718~^~N~^~Unknown~^~VkDeviceGroupRenderPassBeginInfo~^~VUID-VkDeviceGroupRenderPassBeginInfo-deviceRenderAreaCount-00908~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'deviceRenderAreaCount must either be zero or equal to the number of physical devices in the logical device.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupRenderPassBeginInfo-deviceRenderAreaCount-00908)~^~
-VALIDATION_ERROR_06614201~^~N~^~Unknown~^~VkDeviceGroupRenderPassBeginInfo~^~VUID-VkDeviceGroupRenderPassBeginInfo-pDeviceRenderAreas-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If deviceRenderAreaCount is not 0, pDeviceRenderAreas must be a valid pointer to an array of deviceRenderAreaCount VkRect2D structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupRenderPassBeginInfo-pDeviceRenderAreas-parameter)~^~implicit
+VALIDATION_ERROR_06614201~^~Y~^~Unknown~^~VkDeviceGroupRenderPassBeginInfo~^~VUID-VkDeviceGroupRenderPassBeginInfo-pDeviceRenderAreas-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If deviceRenderAreaCount is not 0, pDeviceRenderAreas must be a valid pointer to an array of deviceRenderAreaCount VkRect2D structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupRenderPassBeginInfo-pDeviceRenderAreas-parameter)~^~implicit
 VALIDATION_ERROR_0662b00b~^~N~^~Unknown~^~VkDeviceGroupRenderPassBeginInfo~^~VUID-VkDeviceGroupRenderPassBeginInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupRenderPassBeginInfo-sType-sType)~^~implicit
 VALIDATION_ERROR_068000a4~^~N~^~Unknown~^~VkDeviceGroupSubmitInfo~^~VUID-VkDeviceGroupSubmitInfo-waitSemaphoreCount-00082~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'waitSemaphoreCount must equal VkSubmitInfo::waitSemaphoreCount' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSubmitInfo-waitSemaphoreCount-00082)~^~
 VALIDATION_ERROR_068000a6~^~N~^~Unknown~^~VkDeviceGroupSubmitInfo~^~VUID-VkDeviceGroupSubmitInfo-commandBufferCount-00083~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'commandBufferCount must equal VkSubmitInfo::commandBufferCount' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSubmitInfo-commandBufferCount-00083)~^~
 VALIDATION_ERROR_068000a8~^~N~^~Unknown~^~VkDeviceGroupSubmitInfo~^~VUID-VkDeviceGroupSubmitInfo-signalSemaphoreCount-00084~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'signalSemaphoreCount must equal VkSubmitInfo::signalSemaphoreCount' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSubmitInfo-signalSemaphoreCount-00084)~^~
 VALIDATION_ERROR_068000aa~^~N~^~Unknown~^~VkDeviceGroupSubmitInfo~^~VUID-VkDeviceGroupSubmitInfo-pWaitSemaphoreDeviceIndices-00085~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'All elements of pWaitSemaphoreDeviceIndices and pSignalSemaphoreDeviceIndices must be valid device indices' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSubmitInfo-pWaitSemaphoreDeviceIndices-00085)~^~
 VALIDATION_ERROR_068000ac~^~N~^~Unknown~^~VkDeviceGroupSubmitInfo~^~VUID-VkDeviceGroupSubmitInfo-pCommandBufferDeviceMasks-00086~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'All elements of pCommandBufferDeviceMasks must be valid device masks' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSubmitInfo-pCommandBufferDeviceMasks-00086)~^~
-VALIDATION_ERROR_06811201~^~N~^~Unknown~^~VkDeviceGroupSubmitInfo~^~VUID-VkDeviceGroupSubmitInfo-pCommandBufferDeviceMasks-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If commandBufferCount is not 0, pCommandBufferDeviceMasks must be a valid pointer to an array of commandBufferCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSubmitInfo-pCommandBufferDeviceMasks-parameter)~^~implicit
-VALIDATION_ERROR_06823001~^~N~^~Unknown~^~VkDeviceGroupSubmitInfo~^~VUID-VkDeviceGroupSubmitInfo-pSignalSemaphoreDeviceIndices-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If signalSemaphoreCount is not 0, pSignalSemaphoreDeviceIndices must be a valid pointer to an array of signalSemaphoreCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSubmitInfo-pSignalSemaphoreDeviceIndices-parameter)~^~implicit
-VALIDATION_ERROR_06827201~^~N~^~Unknown~^~VkDeviceGroupSubmitInfo~^~VUID-VkDeviceGroupSubmitInfo-pWaitSemaphoreDeviceIndices-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If waitSemaphoreCount is not 0, pWaitSemaphoreDeviceIndices must be a valid pointer to an array of waitSemaphoreCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSubmitInfo-pWaitSemaphoreDeviceIndices-parameter)~^~implicit
+VALIDATION_ERROR_06811201~^~Y~^~Unknown~^~VkDeviceGroupSubmitInfo~^~VUID-VkDeviceGroupSubmitInfo-pCommandBufferDeviceMasks-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If commandBufferCount is not 0, pCommandBufferDeviceMasks must be a valid pointer to an array of commandBufferCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSubmitInfo-pCommandBufferDeviceMasks-parameter)~^~implicit
+VALIDATION_ERROR_06823001~^~Y~^~Unknown~^~VkDeviceGroupSubmitInfo~^~VUID-VkDeviceGroupSubmitInfo-pSignalSemaphoreDeviceIndices-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If signalSemaphoreCount is not 0, pSignalSemaphoreDeviceIndices must be a valid pointer to an array of signalSemaphoreCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSubmitInfo-pSignalSemaphoreDeviceIndices-parameter)~^~implicit
+VALIDATION_ERROR_06827201~^~Y~^~Unknown~^~VkDeviceGroupSubmitInfo~^~VUID-VkDeviceGroupSubmitInfo-pWaitSemaphoreDeviceIndices-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If waitSemaphoreCount is not 0, pWaitSemaphoreDeviceIndices must be a valid pointer to an array of waitSemaphoreCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSubmitInfo-pWaitSemaphoreDeviceIndices-parameter)~^~implicit
 VALIDATION_ERROR_0682b00b~^~N~^~Unknown~^~VkDeviceGroupSubmitInfo~^~VUID-VkDeviceGroupSubmitInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSubmitInfo-sType-sType)~^~implicit
 VALIDATION_ERROR_06a0d001~^~N~^~Unknown~^~VkDeviceGroupSwapchainCreateInfoKHR~^~VUID-VkDeviceGroupSwapchainCreateInfoKHR-modes-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'modes must be a valid combination of VkDeviceGroupPresentModeFlagBitsKHR values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSwapchainCreateInfoKHR-modes-parameter)~^~implicit
-VALIDATION_ERROR_06a0d003~^~N~^~Unknown~^~VkDeviceGroupSwapchainCreateInfoKHR~^~VUID-VkDeviceGroupSwapchainCreateInfoKHR-modes-requiredbitmask~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'modes must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSwapchainCreateInfoKHR-modes-requiredbitmask)~^~implicit
+VALIDATION_ERROR_06a0d003~^~Y~^~Unknown~^~VkDeviceGroupSwapchainCreateInfoKHR~^~VUID-VkDeviceGroupSwapchainCreateInfoKHR-modes-requiredbitmask~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'modes must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSwapchainCreateInfoKHR-modes-requiredbitmask)~^~implicit
 VALIDATION_ERROR_06a2b00b~^~N~^~Unknown~^~VkDeviceGroupSwapchainCreateInfoKHR~^~VUID-VkDeviceGroupSwapchainCreateInfoKHR-sType-sType~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupSwapchainCreateInfoKHR-sType-sType)~^~implicit
 VALIDATION_ERROR_06c002fa~^~Y~^~Unknown~^~VkDeviceQueueCreateInfo~^~VUID-VkDeviceQueueCreateInfo-queueFamilyIndex-00381~^~core~^~The spec valid usage text states 'queueFamilyIndex must be less than pQueueFamilyPropertyCount returned by vkGetPhysicalDeviceQueueFamilyProperties' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceQueueCreateInfo-queueFamilyIndex-00381)~^~
 VALIDATION_ERROR_06c002fc~^~Y~^~Unknown~^~VkDeviceQueueCreateInfo~^~VUID-VkDeviceQueueCreateInfo-queueCount-00382~^~core~^~The spec valid usage text states 'queueCount must be less than or equal to the queueCount member of the VkQueueFamilyProperties structure, as returned by vkGetPhysicalDeviceQueueFamilyProperties in the pQueueFamilyProperties[queueFamilyIndex]' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkDeviceQueueCreateInfo-queueCount-00382)~^~
@@ -479,9 +479,9 @@
 VALIDATION_ERROR_07e1c40d~^~Y~^~Unknown~^~VkEventCreateInfo~^~VUID-VkEventCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkEventCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_07e2b00b~^~Y~^~Unknown~^~VkEventCreateInfo~^~VUID-VkEventCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EVENT_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkEventCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_08000520~^~N~^~Unknown~^~VkExportMemoryAllocateInfo~^~VUID-VkExportMemoryAllocateInfo-handleTypes-00656~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalImageFormatProperties or VkExternalBufferProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfo-handleTypes-00656)~^~
-VALIDATION_ERROR_08009e01~^~N~^~Unknown~^~VkExportMemoryAllocateInfo~^~VUID-VkExportMemoryAllocateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfo-handleTypes-parameter)~^~implicit
+VALIDATION_ERROR_08009e01~^~Y~^~Unknown~^~VkExportMemoryAllocateInfo~^~VUID-VkExportMemoryAllocateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfo-handleTypes-parameter)~^~implicit
 VALIDATION_ERROR_0802b00b~^~N~^~Unknown~^~VkExportMemoryAllocateInfo~^~VUID-VkExportMemoryAllocateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfo-sType-sType)~^~implicit
-VALIDATION_ERROR_08209e01~^~N~^~Unknown~^~VkExportMemoryAllocateInfoNV~^~VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter~^~(VK_NV_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter)~^~implicit
+VALIDATION_ERROR_08209e01~^~Y~^~Unknown~^~VkExportMemoryAllocateInfoNV~^~VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter~^~(VK_NV_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-handleTypes-parameter)~^~implicit
 VALIDATION_ERROR_0822b00b~^~N~^~Unknown~^~VkExportMemoryAllocateInfoNV~^~VUID-VkExportMemoryAllocateInfoNV-sType-sType~^~(VK_NV_external_memory)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryAllocateInfoNV-sType-sType)~^~implicit
 VALIDATION_ERROR_08400522~^~N~^~Unknown~^~VkExportMemoryWin32HandleInfoKHR~^~VUID-VkExportMemoryWin32HandleInfoKHR-handleTypes-00657~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If VkExportMemoryAllocateInfo::handleTypes does not include VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT, VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, VkExportMemoryWin32HandleInfoKHR must not be in the pNext chain of VkMemoryAllocateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-handleTypes-00657)~^~
 VALIDATION_ERROR_0840f401~^~N~^~Unknown~^~VkExportMemoryWin32HandleInfoKHR~^~VUID-VkExportMemoryWin32HandleInfoKHR-pAttributes-parameter~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a valid pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoKHR-pAttributes-parameter)~^~implicit
@@ -489,17 +489,17 @@
 VALIDATION_ERROR_0860f401~^~N~^~Unknown~^~VkExportMemoryWin32HandleInfoNV~^~VUID-VkExportMemoryWin32HandleInfoNV-pAttributes-parameter~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a valid pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-pAttributes-parameter)~^~implicit
 VALIDATION_ERROR_0862b00b~^~N~^~Unknown~^~VkExportMemoryWin32HandleInfoNV~^~VUID-VkExportMemoryWin32HandleInfoNV-sType-sType~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportMemoryWin32HandleInfoNV-sType-sType)~^~implicit
 VALIDATION_ERROR_088008c8~^~N~^~Unknown~^~VkExportSemaphoreCreateInfo~^~VUID-VkExportSemaphoreCreateInfo-handleTypes-01124~^~(VK_VERSION_1_1,VK_KHR_external_semaphore)~^~The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalSemaphoreProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreCreateInfo-handleTypes-01124)~^~
-VALIDATION_ERROR_08809e01~^~N~^~Unknown~^~VkExportSemaphoreCreateInfo~^~VUID-VkExportSemaphoreCreateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_semaphore)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalSemaphoreHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreCreateInfo-handleTypes-parameter)~^~implicit
+VALIDATION_ERROR_08809e01~^~Y~^~Unknown~^~VkExportSemaphoreCreateInfo~^~VUID-VkExportSemaphoreCreateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_semaphore)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalSemaphoreHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreCreateInfo-handleTypes-parameter)~^~implicit
 VALIDATION_ERROR_0882b00b~^~N~^~Unknown~^~VkExportSemaphoreCreateInfo~^~VUID-VkExportSemaphoreCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_semaphore)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreCreateInfo-sType-sType)~^~implicit
 VALIDATION_ERROR_08a008ca~^~N~^~Unknown~^~VkExportSemaphoreWin32HandleInfoKHR~^~VUID-VkExportSemaphoreWin32HandleInfoKHR-handleTypes-01125~^~(VK_KHR_external_semaphore_win32)~^~The spec valid usage text states 'If VkExportSemaphoreCreateInfo::handleTypes does not include VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT or VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT, VkExportSemaphoreWin32HandleInfoKHR must not be in the pNext chain of VkSemaphoreCreateInfo.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-handleTypes-01125)~^~
 VALIDATION_ERROR_08a0f401~^~N~^~Unknown~^~VkExportSemaphoreWin32HandleInfoKHR~^~VUID-VkExportSemaphoreWin32HandleInfoKHR-pAttributes-parameter~^~(VK_KHR_external_semaphore_win32)~^~The spec valid usage text states 'If pAttributes is not NULL, pAttributes must be a valid pointer to a valid SECURITY_ATTRIBUTES value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-pAttributes-parameter)~^~implicit
 VALIDATION_ERROR_08a2b00b~^~N~^~Unknown~^~VkExportSemaphoreWin32HandleInfoKHR~^~VUID-VkExportSemaphoreWin32HandleInfoKHR-sType-sType~^~(VK_KHR_external_semaphore_win32)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportSemaphoreWin32HandleInfoKHR-sType-sType)~^~implicit
-VALIDATION_ERROR_08c09e01~^~N~^~Unknown~^~VkExternalMemoryBufferCreateInfo~^~VUID-VkExternalMemoryBufferCreateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfo-handleTypes-parameter)~^~implicit
+VALIDATION_ERROR_08c09e01~^~Y~^~Unknown~^~VkExternalMemoryBufferCreateInfo~^~VUID-VkExternalMemoryBufferCreateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfo-handleTypes-parameter)~^~implicit
 VALIDATION_ERROR_08c2b00b~^~N~^~Unknown~^~VkExternalMemoryBufferCreateInfo~^~VUID-VkExternalMemoryBufferCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryBufferCreateInfo-sType-sType)~^~implicit
 VALIDATION_ERROR_08e09e01~^~N~^~Unknown~^~VkExternalMemoryImageCreateInfo~^~VUID-VkExternalMemoryImageCreateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfo-handleTypes-parameter)~^~implicit
-VALIDATION_ERROR_08e09e03~^~N~^~Unknown~^~VkExternalMemoryImageCreateInfo~^~VUID-VkExternalMemoryImageCreateInfo-handleTypes-requiredbitmask~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'handleTypes must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfo-handleTypes-requiredbitmask)~^~implicit
+VALIDATION_ERROR_08e09e03~^~Y~^~Unknown~^~VkExternalMemoryImageCreateInfo~^~VUID-VkExternalMemoryImageCreateInfo-handleTypes-requiredbitmask~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'handleTypes must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfo-handleTypes-requiredbitmask)~^~implicit
 VALIDATION_ERROR_08e2b00b~^~N~^~Unknown~^~VkExternalMemoryImageCreateInfo~^~VUID-VkExternalMemoryImageCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_memory)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfo-sType-sType)~^~implicit
-VALIDATION_ERROR_09009e01~^~N~^~Unknown~^~VkExternalMemoryImageCreateInfoNV~^~VUID-VkExternalMemoryImageCreateInfoNV-handleTypes-parameter~^~(VK_NV_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-handleTypes-parameter)~^~implicit
+VALIDATION_ERROR_09009e01~^~Y~^~Unknown~^~VkExternalMemoryImageCreateInfoNV~^~VUID-VkExternalMemoryImageCreateInfoNV-handleTypes-parameter~^~(VK_NV_external_memory)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-handleTypes-parameter)~^~implicit
 VALIDATION_ERROR_0902b00b~^~N~^~Unknown~^~VkExternalMemoryImageCreateInfoNV~^~VUID-VkExternalMemoryImageCreateInfoNV-sType-sType~^~(VK_NV_external_memory)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalMemoryImageCreateInfoNV-sType-sType)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_09209001~^~Y~^~Unknown~^~VkFenceCreateInfo~^~VUID-VkFenceCreateInfo-flags-parameter~^~core~^~The spec valid usage text states 'flags must be a valid combination of VkFenceCreateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-flags-parameter)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_0921c40d~^~Y~^~Unknown~^~VkFenceCreateInfo~^~VUID-VkFenceCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkExportFenceCreateInfo or VkExportFenceWin32HandleInfoKHR' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkFenceCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer.
@@ -851,7 +851,7 @@
 VALIDATION_ERROR_0ae0053c~^~N~^~Unknown~^~VkImportMemoryFdInfoKHR~^~VUID-VkImportMemoryFdInfoKHR-handleType-00670~^~(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If handleType is not 0, fd must be a valid handle of the type specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-handleType-00670)~^~
 VALIDATION_ERROR_0ae00be0~^~N~^~None~^~VkImportMemoryFdInfoKHR~^~VUID-VkImportMemoryFdInfoKHR-fd-01520~^~(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'fd must obey any requirements listed for handleType in external memory handle types compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-fd-01520)~^~
 VALIDATION_ERROR_0ae00da4~^~N~^~None~^~VkImportMemoryFdInfoKHR~^~VUID-VkImportMemoryFdInfoKHR-fd-01746~^~(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'The memory represented by fd must have been created from a physical device and driver that is compatible with device and handleType, as described in external-memory-handle-types-compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-fd-01746)~^~
-VALIDATION_ERROR_0ae09c01~^~N~^~Unknown~^~VkImportMemoryFdInfoKHR~^~VUID-VkImportMemoryFdInfoKHR-handleType-parameter~^~(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_0ae09c01~^~Y~^~Unknown~^~VkImportMemoryFdInfoKHR~^~VUID-VkImportMemoryFdInfoKHR-handleType-parameter~^~(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-handleType-parameter)~^~implicit
 VALIDATION_ERROR_0ae2b00b~^~N~^~Unknown~^~VkImportMemoryFdInfoKHR~^~VUID-VkImportMemoryFdInfoKHR-sType-sType~^~(VK_KHR_external_memory_fd)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryFdInfoKHR-sType-sType)~^~implicit
 VALIDATION_ERROR_0b000524~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00658~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If handleType is not 0, it must be supported for import, as reported by VkExternalImageFormatProperties or VkExternalBufferProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-00658)~^~
 VALIDATION_ERROR_0b000526~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-handle-00659~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'The memory from which handle was exported, or the memory named by name must have been created on the same underlying physical device as device.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handle-00659)~^~
@@ -862,11 +862,11 @@
 VALIDATION_ERROR_0b000b42~^~N~^~None~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-handle-01441~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'if handle is not NULL, name must be NULL.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handle-01441)~^~
 VALIDATION_ERROR_0b000bdc~^~N~^~None~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-handle-01518~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If handle is not NULL, it must obey any requirements listed for handleType in external memory handle types compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handle-01518)~^~
 VALIDATION_ERROR_0b000bde~^~N~^~None~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-name-01519~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If name is not NULL, it must obey any requirements listed for handleType in external memory handle types compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-name-01519)~^~
-VALIDATION_ERROR_0b009c01~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-handleType-parameter~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-parameter)~^~implicit
+VALIDATION_ERROR_0b009c01~^~Y~^~Unknown~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-handleType-parameter~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-handleType-parameter)~^~implicit
 VALIDATION_ERROR_0b02b00b~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoKHR~^~VUID-VkImportMemoryWin32HandleInfoKHR-sType-sType~^~(VK_KHR_external_memory_win32)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoKHR-sType-sType)~^~implicit
 VALIDATION_ERROR_0b200a5e~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoNV~^~VUID-VkImportMemoryWin32HandleInfoNV-handleType-01327~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'handleType must not have more than one bit set.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handleType-01327)~^~
 VALIDATION_ERROR_0b200a60~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoNV~^~VUID-VkImportMemoryWin32HandleInfoNV-handle-01328~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'handle must be a valid handle to memory, obtained as specified by handleType.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handle-01328)~^~
-VALIDATION_ERROR_0b209c01~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoNV~^~VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'handleType must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter)~^~implicit
+VALIDATION_ERROR_0b209c01~^~Y~^~Unknown~^~VkImportMemoryWin32HandleInfoNV~^~VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'handleType must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-handleType-parameter)~^~implicit
 VALIDATION_ERROR_0b22b00b~^~N~^~Unknown~^~VkImportMemoryWin32HandleInfoNV~^~VUID-VkImportMemoryWin32HandleInfoNV-sType-sType~^~(VK_NV_external_memory_win32)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryWin32HandleInfoNV-sType-sType)~^~implicit
 VALIDATION_ERROR_0b4008ee~^~N~^~Unknown~^~VkImportSemaphoreFdInfoKHR~^~VUID-VkImportSemaphoreFdInfoKHR-handleType-01143~^~(VK_KHR_external_semaphore_fd)~^~The spec valid usage text states 'handleType must be a value included in the Handle Types Supported by VkImportSemaphoreFdInfoKHR table.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-handleType-01143)~^~
 VALIDATION_ERROR_0b400c10~^~N~^~None~^~VkImportSemaphoreFdInfoKHR~^~VUID-VkImportSemaphoreFdInfoKHR-fd-01544~^~(VK_KHR_external_semaphore_fd)~^~The spec valid usage text states 'fd must obey any requirements listed for handleType in external semaphore handle types compatibility.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportSemaphoreFdInfoKHR-fd-01544)~^~
@@ -929,7 +929,7 @@
 VALIDATION_ERROR_0c22b00b~^~N~^~Unknown~^~VkMappedMemoryRange~^~VUID-VkMappedMemoryRange-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMappedMemoryRange-sType-sType)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_0c400546~^~N~^~Unknown~^~VkMemoryAllocateFlagsInfo~^~VUID-VkMemoryAllocateFlagsInfo-deviceMask-00675~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT is set, deviceMask must be a valid device mask.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateFlagsInfo-deviceMask-00675)~^~
 VALIDATION_ERROR_0c400548~^~N~^~Unknown~^~VkMemoryAllocateFlagsInfo~^~VUID-VkMemoryAllocateFlagsInfo-deviceMask-00676~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT is set, deviceMask must not be zero' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateFlagsInfo-deviceMask-00676)~^~
-VALIDATION_ERROR_0c409001~^~N~^~Unknown~^~VkMemoryAllocateFlagsInfo~^~VUID-VkMemoryAllocateFlagsInfo-flags-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'flags must be a valid combination of VkMemoryAllocateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateFlagsInfo-flags-parameter)~^~implicit
+VALIDATION_ERROR_0c409001~^~Y~^~Unknown~^~VkMemoryAllocateFlagsInfo~^~VUID-VkMemoryAllocateFlagsInfo-flags-parameter~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'flags must be a valid combination of VkMemoryAllocateFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateFlagsInfo-flags-parameter)~^~implicit
 VALIDATION_ERROR_0c42b00b~^~N~^~Unknown~^~VkMemoryAllocateFlagsInfo~^~VUID-VkMemoryAllocateFlagsInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateFlagsInfo-sType-sType)~^~implicit
 VALIDATION_ERROR_0c6004fc~^~N~^~Unknown~^~VkMemoryAllocateInfo~^~VUID-VkMemoryAllocateInfo-allocationSize-00638~^~!(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'allocationSize must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkMemoryAllocateInfo-allocationSize-00638)~^~
 VALIDATION_ERROR_0c6004fe~^~N~^~Unknown~^~VkMemoryAllocateInfo~^~VUID-VkMemoryAllocateInfo-pNext-00639~^~(VK_KHR_external_memory)+(VK_KHR_dedicated_allocation,VK_NV_dedicated_allocation)~^~The spec valid usage text states 'If the pNext chain contains an instance of     VkExportMemoryAllocateInfo, and any of the handle types specified     in VkExportMemoryAllocateInfo::handleTypes require a     dedicated allocation, as reported by     vkGetPhysicalDeviceImageFormatProperties2 in     VkExternalImageFormatProperties::externalMemoryProperties::externalMemoryFeatures     or     VkExternalBufferProperties::externalMemoryProperties::externalMemoryFeatures,     the pNext chain must contain an instance of ifdef::VK_KHR_dedicated_allocation[VkMemoryDedicatedAllocateInfo]' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00639)~^~
@@ -1015,7 +1015,7 @@
 VALIDATION_ERROR_0dc2b00b~^~Y~^~Unknown~^~VkPhysicalDeviceExternalBufferInfo~^~VUID-VkPhysicalDeviceExternalBufferInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfo-sType-sType)~^~implicit
 VALIDATION_ERROR_0dc30601~^~N~^~Unknown~^~VkPhysicalDeviceExternalBufferInfo~^~VUID-VkPhysicalDeviceExternalBufferInfo-usage-parameter~^~(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'usage must be a valid combination of VkBufferUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfo-usage-parameter)~^~implicit
 VALIDATION_ERROR_0dc30603~^~Y~^~Unknown~^~VkPhysicalDeviceExternalBufferInfo~^~VUID-VkPhysicalDeviceExternalBufferInfo-usage-requiredbitmask~^~(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalBufferInfo-usage-requiredbitmask)~^~implicit
-VALIDATION_ERROR_0de09c01~^~N~^~Unknown~^~VkPhysicalDeviceExternalImageFormatInfo~^~VUID-VkPhysicalDeviceExternalImageFormatInfo-handleType-parameter~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)+(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalImageFormatInfo-handleType-parameter)~^~implicit
+VALIDATION_ERROR_0de09c01~^~Y~^~Unknown~^~VkPhysicalDeviceExternalImageFormatInfo~^~VUID-VkPhysicalDeviceExternalImageFormatInfo-handleType-parameter~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)+(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'If handleType is not 0, handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalImageFormatInfo-handleType-parameter)~^~implicit
 VALIDATION_ERROR_0de2b00b~^~N~^~Unknown~^~VkPhysicalDeviceExternalImageFormatInfo~^~VUID-VkPhysicalDeviceExternalImageFormatInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)+(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalImageFormatInfo-sType-sType)~^~implicit
 VALIDATION_ERROR_0e009c01~^~Y~^~Unknown~^~VkPhysicalDeviceExternalSemaphoreInfo~^~VUID-VkPhysicalDeviceExternalSemaphoreInfo-handleType-parameter~^~(VK_VERSION_1_1,VK_KHR_external_semaphore_capabilities)~^~The spec valid usage text states 'handleType must be a valid VkExternalSemaphoreHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfo-handleType-parameter)~^~implicit
 VALIDATION_ERROR_0e01c40d~^~Y~^~Unknown~^~VkPhysicalDeviceExternalSemaphoreInfo~^~VUID-VkPhysicalDeviceExternalSemaphoreInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_semaphore_capabilities)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalSemaphoreInfo-pNext-pNext)~^~implicit
@@ -1082,8 +1082,8 @@
 VALIDATION_ERROR_0f61c40d~^~Y~^~Unknown~^~VkPipelineDepthStencilStateCreateInfo~^~VUID-VkPipelineDepthStencilStateCreateInfo-pNext-pNext~^~core~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDepthStencilStateCreateInfo-pNext-pNext)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_0f62b00b~^~N~^~Unknown~^~VkPipelineDepthStencilStateCreateInfo~^~VUID-VkPipelineDepthStencilStateCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDepthStencilStateCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_0f80048c~^~N~^~Unknown~^~VkPipelineDiscardRectangleStateCreateInfoEXT~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleCount-00582~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'discardRectangleCount must be between 0 and VkPhysicalDeviceDiscardRectanglePropertiesEXT::maxDiscardRectangles, inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleCount-00582)~^~
-VALIDATION_ERROR_0f805e01~^~N~^~Unknown~^~VkPipelineDiscardRectangleStateCreateInfoEXT~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleMode-parameter~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'discardRectangleMode must be a valid VkDiscardRectangleModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleMode-parameter)~^~implicit
-VALIDATION_ERROR_0f809005~^~N~^~Unknown~^~VkPipelineDiscardRectangleStateCreateInfoEXT~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-flags-zerobitmask~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-flags-zerobitmask)~^~implicit
+VALIDATION_ERROR_0f805e01~^~Y~^~Unknown~^~VkPipelineDiscardRectangleStateCreateInfoEXT~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleMode-parameter~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'discardRectangleMode must be a valid VkDiscardRectangleModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-discardRectangleMode-parameter)~^~implicit
+VALIDATION_ERROR_0f809005~^~Y~^~Unknown~^~VkPipelineDiscardRectangleStateCreateInfoEXT~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-flags-zerobitmask~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-flags-zerobitmask)~^~implicit
 VALIDATION_ERROR_0f82b00b~^~N~^~Unknown~^~VkPipelineDiscardRectangleStateCreateInfoEXT~^~VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-sType-sType~^~(VK_EXT_discard_rectangles)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineDiscardRectangleStateCreateInfoEXT-sType-sType)~^~implicit
 VALIDATION_ERROR_0fa00b44~^~N~^~None~^~VkPipelineDynamicStateCreateInfo~^~VUID-VkPipelineDynamicStateCreateInfo-pDynamicStates-01442~^~core~^~The spec valid usage text states 'Each element of pDynamicStates must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-pDynamicStates-01442)~^~
 VALIDATION_ERROR_0fa07c1b~^~N~^~Unknown~^~VkPipelineDynamicStateCreateInfo~^~VUID-VkPipelineDynamicStateCreateInfo-dynamicStateCount-arraylength~^~core~^~The spec valid usage text states 'dynamicStateCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineDynamicStateCreateInfo-dynamicStateCount-arraylength)~^~implicit
@@ -1169,7 +1169,7 @@
 VALIDATION_ERROR_10228601~^~Y~^~Unknown~^~VkPipelineRasterizationStateCreateInfo~^~VUID-VkPipelineRasterizationStateCreateInfo-polygonMode-parameter~^~core~^~The spec valid usage text states 'polygonMode must be a valid VkPolygonMode value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineRasterizationStateCreateInfo-polygonMode-parameter)~^~implicit
 VALIDATION_ERROR_1022b00b~^~Y~^~Unknown~^~VkPipelineRasterizationStateCreateInfo~^~VUID-VkPipelineRasterizationStateCreateInfo-sType-sType~^~core~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineRasterizationStateCreateInfo-sType-sType)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_1022b00f~^~N~^~None~^~VkPipelineRasterizationStateCreateInfo~^~VUID-VkPipelineRasterizationStateCreateInfo-sType-unique~^~core~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineRasterizationStateCreateInfo-sType-unique)~^~implicit
-VALIDATION_ERROR_1042a601~^~N~^~Unknown~^~VkPipelineRasterizationStateRasterizationOrderAMD~^~VUID-VkPipelineRasterizationStateRasterizationOrderAMD-rasterizationOrder-parameter~^~(VK_AMD_rasterization_order)~^~The spec valid usage text states 'rasterizationOrder must be a valid VkRasterizationOrderAMD value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationStateRasterizationOrderAMD-rasterizationOrder-parameter)~^~implicit
+VALIDATION_ERROR_1042a601~^~Y~^~Unknown~^~VkPipelineRasterizationStateRasterizationOrderAMD~^~VUID-VkPipelineRasterizationStateRasterizationOrderAMD-rasterizationOrder-parameter~^~(VK_AMD_rasterization_order)~^~The spec valid usage text states 'rasterizationOrder must be a valid VkRasterizationOrderAMD value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationStateRasterizationOrderAMD-rasterizationOrder-parameter)~^~implicit
 VALIDATION_ERROR_1042b00b~^~N~^~Unknown~^~VkPipelineRasterizationStateRasterizationOrderAMD~^~VUID-VkPipelineRasterizationStateRasterizationOrderAMD-sType-sType~^~(VK_AMD_rasterization_order)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationStateRasterizationOrderAMD-sType-sType)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_10600580~^~N~^~Unknown~^~VkPipelineShaderStageCreateInfo~^~VUID-VkPipelineShaderStageCreateInfo-stage-00704~^~core~^~The spec valid usage text states 'If the geometry shaders feature is not enabled, stage must not be VK_SHADER_STAGE_GEOMETRY_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineShaderStageCreateInfo-stage-00704)~^~
 VALIDATION_ERROR_10600582~^~N~^~Unknown~^~VkPipelineShaderStageCreateInfo~^~VUID-VkPipelineShaderStageCreateInfo-stage-00705~^~core~^~The spec valid usage text states 'If the tessellation shaders feature is not enabled, stage must not be VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT or VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineShaderStageCreateInfo-stage-00705)~^~
@@ -1222,7 +1222,7 @@
 VALIDATION_ERROR_10c2b61b~^~Y~^~PSOViewportStateMultiViewportTests~^~VkPipelineViewportStateCreateInfo~^~VUID-VkPipelineViewportStateCreateInfo-scissorCount-arraylength~^~core~^~The spec valid usage text states 'scissorCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-scissorCount-arraylength)~^~implicit
 VALIDATION_ERROR_10c30a1b~^~Y~^~PSOViewportStateMultiViewportTests~^~VkPipelineViewportStateCreateInfo~^~VUID-VkPipelineViewportStateCreateInfo-viewportCount-arraylength~^~core~^~The spec valid usage text states 'viewportCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPipelineViewportStateCreateInfo-viewportCount-arraylength)~^~implicit
 VALIDATION_ERROR_10e0097e~^~N~^~Unknown~^~VkPipelineViewportSwizzleStateCreateInfoNV~^~VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-01215~^~(VK_NV_viewport_swizzle)~^~The spec valid usage text states 'viewportCount must match the viewportCount set in VkPipelineViewportStateCreateInfo' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-01215)~^~
-VALIDATION_ERROR_10e09005~^~N~^~Unknown~^~VkPipelineViewportSwizzleStateCreateInfoNV~^~VUID-VkPipelineViewportSwizzleStateCreateInfoNV-flags-zerobitmask~^~(VK_NV_viewport_swizzle)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-flags-zerobitmask)~^~implicit, TBD in parameter validation layer.
+VALIDATION_ERROR_10e09005~^~Y~^~Unknown~^~VkPipelineViewportSwizzleStateCreateInfoNV~^~VUID-VkPipelineViewportSwizzleStateCreateInfoNV-flags-zerobitmask~^~(VK_NV_viewport_swizzle)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-flags-zerobitmask)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_10e2b00b~^~N~^~Unknown~^~VkPipelineViewportSwizzleStateCreateInfoNV~^~VUID-VkPipelineViewportSwizzleStateCreateInfoNV-sType-sType~^~(VK_NV_viewport_swizzle)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-sType-sType)~^~implicit
 VALIDATION_ERROR_10e30a1b~^~N~^~Unknown~^~VkPipelineViewportSwizzleStateCreateInfoNV~^~VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-arraylength~^~(VK_NV_viewport_swizzle)~^~The spec valid usage text states 'viewportCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportSwizzleStateCreateInfoNV-viewportCount-arraylength)~^~implicit
 VALIDATION_ERROR_1102b00b~^~N~^~Unknown~^~VkPipelineViewportWScalingStateCreateInfoNV~^~VUID-VkPipelineViewportWScalingStateCreateInfoNV-sType-sType~^~(VK_NV_clip_space_w_scaling)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineViewportWScalingStateCreateInfoNV-sType-sType)~^~implicit
@@ -1240,13 +1240,13 @@
 VALIDATION_ERROR_1122f21b~^~Y~^~Unknown~^~VkPresentInfoKHR~^~VUID-VkPresentInfoKHR-swapchainCount-arraylength~^~(VK_KHR_surface)+(VK_KHR_swapchain)~^~The spec valid usage text states 'swapchainCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentInfoKHR-swapchainCount-arraylength)~^~implicit
 VALIDATION_ERROR_11420c01~^~N~^~Unknown~^~VkPresentRegionKHR~^~VUID-VkPresentRegionKHR-pRectangles-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_KHR_incremental_present)~^~The spec valid usage text states 'If rectangleCount is not 0, and pRectangles is not NULL, pRectangles must be a valid pointer to an array of rectangleCount VkRectLayerKHR structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentRegionKHR-pRectangles-parameter)~^~implicit
 VALIDATION_ERROR_116009d8~^~N~^~Unknown~^~VkPresentRegionsKHR~^~VUID-VkPresentRegionsKHR-swapchainCount-01260~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_KHR_incremental_present)~^~The spec valid usage text states 'swapchainCount must be the same value as VkPresentInfoKHR::swapchainCount, where VkPresentInfoKHR is in the pNext-chain of this VkPresentRegionsKHR structure.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentRegionsKHR-swapchainCount-01260)~^~
-VALIDATION_ERROR_11621001~^~N~^~Unknown~^~VkPresentRegionsKHR~^~VUID-VkPresentRegionsKHR-pRegions-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_KHR_incremental_present)~^~The spec valid usage text states 'If pRegions is not NULL, pRegions must be a valid pointer to an array of swapchainCount valid VkPresentRegionKHR structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentRegionsKHR-pRegions-parameter)~^~implicit
+VALIDATION_ERROR_11621001~^~Y~^~Unknown~^~VkPresentRegionsKHR~^~VUID-VkPresentRegionsKHR-pRegions-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_KHR_incremental_present)~^~The spec valid usage text states 'If pRegions is not NULL, pRegions must be a valid pointer to an array of swapchainCount valid VkPresentRegionKHR structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentRegionsKHR-pRegions-parameter)~^~implicit
 VALIDATION_ERROR_1162b00b~^~N~^~Unknown~^~VkPresentRegionsKHR~^~VUID-VkPresentRegionsKHR-sType-sType~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_KHR_incremental_present)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentRegionsKHR-sType-sType)~^~implicit
-VALIDATION_ERROR_1162f21b~^~N~^~Unknown~^~VkPresentRegionsKHR~^~VUID-VkPresentRegionsKHR-swapchainCount-arraylength~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_KHR_incremental_present)~^~The spec valid usage text states 'swapchainCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentRegionsKHR-swapchainCount-arraylength)~^~implicit
+VALIDATION_ERROR_1162f21b~^~Y~^~Unknown~^~VkPresentRegionsKHR~^~VUID-VkPresentRegionsKHR-swapchainCount-arraylength~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_KHR_incremental_present)~^~The spec valid usage text states 'swapchainCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentRegionsKHR-swapchainCount-arraylength)~^~implicit
 VALIDATION_ERROR_118009be~^~Y~^~Unknown~^~VkPresentTimesInfoGOOGLE~^~VUID-VkPresentTimesInfoGOOGLE-swapchainCount-01247~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_GOOGLE_display_timing)~^~The spec valid usage text states 'swapchainCount must be the same value as VkPresentInfoKHR::swapchainCount, where VkPresentInfoKHR is in the pNext chain of this VkPresentTimesInfoGOOGLE structure.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentTimesInfoGOOGLE-swapchainCount-01247)~^~
-VALIDATION_ERROR_11825e01~^~N~^~Unknown~^~VkPresentTimesInfoGOOGLE~^~VUID-VkPresentTimesInfoGOOGLE-pTimes-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_GOOGLE_display_timing)~^~The spec valid usage text states 'If pTimes is not NULL, pTimes must be a valid pointer to an array of swapchainCount VkPresentTimeGOOGLE structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentTimesInfoGOOGLE-pTimes-parameter)~^~implicit
+VALIDATION_ERROR_11825e01~^~Y~^~Unknown~^~VkPresentTimesInfoGOOGLE~^~VUID-VkPresentTimesInfoGOOGLE-pTimes-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_GOOGLE_display_timing)~^~The spec valid usage text states 'If pTimes is not NULL, pTimes must be a valid pointer to an array of swapchainCount VkPresentTimeGOOGLE structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentTimesInfoGOOGLE-pTimes-parameter)~^~implicit
 VALIDATION_ERROR_1182b00b~^~N~^~Unknown~^~VkPresentTimesInfoGOOGLE~^~VUID-VkPresentTimesInfoGOOGLE-sType-sType~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_GOOGLE_display_timing)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentTimesInfoGOOGLE-sType-sType)~^~implicit
-VALIDATION_ERROR_1182f21b~^~N~^~Unknown~^~VkPresentTimesInfoGOOGLE~^~VUID-VkPresentTimesInfoGOOGLE-swapchainCount-arraylength~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_GOOGLE_display_timing)~^~The spec valid usage text states 'swapchainCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentTimesInfoGOOGLE-swapchainCount-arraylength)~^~implicit
+VALIDATION_ERROR_1182f21b~^~Y~^~Unknown~^~VkPresentTimesInfoGOOGLE~^~VUID-VkPresentTimesInfoGOOGLE-swapchainCount-arraylength~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_GOOGLE_display_timing)~^~The spec valid usage text states 'swapchainCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPresentTimesInfoGOOGLE-swapchainCount-arraylength)~^~implicit
 VALIDATION_ERROR_11a0024c~^~Y~^~InvalidPushConstants~^~VkPushConstantRange~^~VUID-VkPushConstantRange-offset-00294~^~core~^~The spec valid usage text states 'offset must be less than VkPhysicalDeviceLimits::maxPushConstantsSize' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPushConstantRange-offset-00294)~^~
 VALIDATION_ERROR_11a0024e~^~Y~^~Unknown~^~VkPushConstantRange~^~VUID-VkPushConstantRange-offset-00295~^~core~^~The spec valid usage text states 'offset must be a multiple of 4' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPushConstantRange-offset-00295)~^~
 VALIDATION_ERROR_11a00250~^~Y~^~InvalidPushConstants~^~VkPushConstantRange~^~VUID-VkPushConstantRange-size-00296~^~core~^~The spec valid usage text states 'size must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkPushConstantRange-size-00296)~^~
@@ -1294,9 +1294,9 @@
 VALIDATION_ERROR_1222b00f~^~N~^~None~^~VkRenderPassCreateInfo~^~VUID-VkRenderPassCreateInfo-sType-unique~^~core~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-sType-unique)~^~implicit
 VALIDATION_ERROR_1222e61b~^~Y~^~Unknown~^~VkRenderPassCreateInfo~^~VUID-VkRenderPassCreateInfo-subpassCount-arraylength~^~core~^~The spec valid usage text states 'subpassCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkRenderPassCreateInfo-subpassCount-arraylength)~^~implicit
 VALIDATION_ERROR_12400692~^~N~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-00841~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'Each view index must not be set in more than one element of pCorrelationMasks' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-00841)~^~
-VALIDATION_ERROR_12411a01~^~N~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-parameter~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If correlationMaskCount is not 0, pCorrelationMasks must be a valid pointer to an array of correlationMaskCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-parameter)~^~implicit
-VALIDATION_ERROR_12426c01~^~N~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-pViewMasks-parameter~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If subpassCount is not 0, pViewMasks must be a valid pointer to an array of subpassCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pViewMasks-parameter)~^~implicit
-VALIDATION_ERROR_12426e01~^~N~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-pViewOffsets-parameter~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If dependencyCount is not 0, pViewOffsets must be a valid pointer to an array of dependencyCount int32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pViewOffsets-parameter)~^~implicit
+VALIDATION_ERROR_12411a01~^~Y~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-parameter~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If correlationMaskCount is not 0, pCorrelationMasks must be a valid pointer to an array of correlationMaskCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pCorrelationMasks-parameter)~^~implicit
+VALIDATION_ERROR_12426c01~^~Y~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-pViewMasks-parameter~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If subpassCount is not 0, pViewMasks must be a valid pointer to an array of subpassCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pViewMasks-parameter)~^~implicit
+VALIDATION_ERROR_12426e01~^~Y~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-pViewOffsets-parameter~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'If dependencyCount is not 0, pViewOffsets must be a valid pointer to an array of dependencyCount int32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-pViewOffsets-parameter)~^~implicit
 VALIDATION_ERROR_1242b00b~^~N~^~Unknown~^~VkRenderPassMultiviewCreateInfo~^~VUID-VkRenderPassMultiviewCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassMultiviewCreateInfo-sType-sType)~^~implicit
 VALIDATION_ERROR_12600201~^~Y~^~Unknown~^~VkSamplerCreateInfo~^~VUID-VkSamplerCreateInfo-addressModeU-parameter~^~core~^~The spec valid usage text states 'addressModeU must be a valid VkSamplerAddressMode value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerCreateInfo-addressModeU-parameter)~^~implicit
 VALIDATION_ERROR_12600401~^~Y~^~Unknown~^~VkSamplerCreateInfo~^~VUID-VkSamplerCreateInfo-addressModeV-parameter~^~core~^~The spec valid usage text states 'addressModeV must be a valid VkSamplerAddressMode value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSamplerCreateInfo-addressModeV-parameter)~^~implicit
@@ -1445,11 +1445,11 @@
 VALIDATION_ERROR_14021c01~^~N~^~Unknown~^~VkSubpassDescription~^~VUID-VkSubpassDescription-pResolveAttachments-parameter~^~core~^~The spec valid usage text states 'If colorAttachmentCount is not 0, and pResolveAttachments is not NULL, pResolveAttachments must be a valid pointer to an array of colorAttachmentCount valid VkAttachmentReference structures' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubpassDescription-pResolveAttachments-parameter)~^~implicit
 VALIDATION_ERROR_14027e01~^~Y~^~Unknown~^~VkSubpassDescription~^~VUID-VkSubpassDescription-pipelineBindPoint-parameter~^~core~^~The spec valid usage text states 'pipelineBindPoint must be a valid VkPipelineBindPoint value' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkSubpassDescription-pipelineBindPoint-parameter)~^~implicit
 VALIDATION_ERROR_142009bc~^~N~^~Unknown~^~VkSurfaceCapabilities2EXT~^~VUID-VkSurfaceCapabilities2EXT-supportedSurfaceCounters-01246~^~(VK_KHR_surface)+(VK_EXT_display_surface_counter)~^~The spec valid usage text states 'supportedSurfaceCounters must not include VK_SURFACE_COUNTER_VBLANK_EXT unless the surface queried is a display surface.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceCapabilities2EXT-supportedSurfaceCounters-01246)~^~
-VALIDATION_ERROR_1421c40d~^~N~^~None~^~VkSurfaceCapabilities2EXT~^~VUID-VkSurfaceCapabilities2EXT-pNext-pNext~^~(VK_KHR_surface)+(VK_EXT_display_surface_counter)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceCapabilities2EXT-pNext-pNext)~^~implicit
+VALIDATION_ERROR_1421c40d~^~Y~^~None~^~VkSurfaceCapabilities2EXT~^~VUID-VkSurfaceCapabilities2EXT-pNext-pNext~^~(VK_KHR_surface)+(VK_EXT_display_surface_counter)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceCapabilities2EXT-pNext-pNext)~^~implicit
 VALIDATION_ERROR_1422b00b~^~Y~^~None~^~VkSurfaceCapabilities2EXT~^~VUID-VkSurfaceCapabilities2EXT-sType-sType~^~(VK_KHR_surface)+(VK_EXT_display_surface_counter)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceCapabilities2EXT-sType-sType)~^~implicit
 VALIDATION_ERROR_144009b8~^~N~^~Unknown~^~VkSwapchainCounterCreateInfoEXT~^~VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-01244~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_EXT_display_control)~^~The spec valid usage text states 'The bits in surfaceCounters must be supported by VkSwapchainCreateInfoKHR::surface, as reported by vkGetPhysicalDeviceSurfaceCapabilities2EXT.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-01244)~^~
 VALIDATION_ERROR_1442b00b~^~N~^~Unknown~^~VkSwapchainCounterCreateInfoEXT~^~VUID-VkSwapchainCounterCreateInfoEXT-sType-sType~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_EXT_display_control)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCounterCreateInfoEXT-sType-sType)~^~implicit
-VALIDATION_ERROR_1442ee01~^~N~^~Unknown~^~VkSwapchainCounterCreateInfoEXT~^~VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_EXT_display_control)~^~The spec valid usage text states 'surfaceCounters must be a valid combination of VkSurfaceCounterFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-parameter)~^~implicit
+VALIDATION_ERROR_1442ee01~^~Y~^~Unknown~^~VkSwapchainCounterCreateInfoEXT~^~VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_EXT_display_control)~^~The spec valid usage text states 'surfaceCounters must be a valid combination of VkSurfaceCounterFlagBitsEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCounterCreateInfoEXT-surfaceCounters-parameter)~^~implicit
 VALIDATION_ERROR_14600009~^~Y~^~None~^~VkSwapchainCreateInfoKHR~^~VUID-VkSwapchainCreateInfoKHR-commonparent~^~(VK_KHR_surface)+(VK_KHR_swapchain)~^~The spec valid usage text states 'Both of oldSwapchain, and surface that are valid handles must have been created, allocated, or retrieved from the same VkInstance' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-commonparent)~^~implicit
 VALIDATION_ERROR_146009ec~^~Y~^~Unknown~^~VkSwapchainCreateInfoKHR~^~VUID-VkSwapchainCreateInfoKHR-surface-01270~^~(VK_KHR_surface)+(VK_KHR_swapchain)~^~The spec valid usage text states 'surface must be a surface that is supported by the device as determined using vkGetPhysicalDeviceSurfaceSupportKHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-surface-01270)~^~
 VALIDATION_ERROR_146009ee~^~Y~^~Unknown~^~VkSwapchainCreateInfoKHR~^~VUID-VkSwapchainCreateInfoKHR-minImageCount-01271~^~(VK_KHR_surface)+(VK_KHR_swapchain)~^~The spec valid usage text states 'minImageCount must be greater than or equal to the value returned in the minImageCount member of the VkSurfaceCapabilitiesKHR structure returned by vkGetPhysicalDeviceSurfaceCapabilitiesKHR for the surface' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-minImageCount-01271)~^~
@@ -1487,8 +1487,8 @@
 VALIDATION_ERROR_1462b00b~^~Y~^~Unknown~^~VkSwapchainCreateInfoKHR~^~VUID-VkSwapchainCreateInfoKHR-sType-sType~^~(VK_KHR_surface)+(VK_KHR_swapchain)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-sType-sType)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_1462b00f~^~N~^~None~^~VkSwapchainCreateInfoKHR~^~VUID-VkSwapchainCreateInfoKHR-sType-unique~^~(VK_KHR_surface)+(VK_KHR_swapchain)~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-sType-unique)~^~implicit
 VALIDATION_ERROR_1462ec01~^~Y~^~None~^~VkSwapchainCreateInfoKHR~^~VUID-VkSwapchainCreateInfoKHR-surface-parameter~^~(VK_KHR_surface)+(VK_KHR_swapchain)~^~The spec valid usage text states 'surface must be a valid VkSurfaceKHR handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSwapchainCreateInfoKHR-surface-parameter)~^~implicit, This error applies to both vkCreateSwapchainKHR and vkCreateSharedSwapchainsKHR.
-VALIDATION_ERROR_14805a1b~^~N~^~Unknown~^~VkValidationFlagsEXT~^~VUID-VkValidationFlagsEXT-disabledValidationCheckCount-arraylength~^~(VK_EXT_validation_flags)~^~The spec valid usage text states 'disabledValidationCheckCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationFlagsEXT-disabledValidationCheckCount-arraylength)~^~implicit
-VALIDATION_ERROR_14814401~^~N~^~Unknown~^~VkValidationFlagsEXT~^~VUID-VkValidationFlagsEXT-pDisabledValidationChecks-parameter~^~(VK_EXT_validation_flags)~^~The spec valid usage text states 'pDisabledValidationChecks must be a valid pointer to an array of disabledValidationCheckCount VkValidationCheckEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationFlagsEXT-pDisabledValidationChecks-parameter)~^~implicit
+VALIDATION_ERROR_14805a1b~^~Y~^~Unknown~^~VkValidationFlagsEXT~^~VUID-VkValidationFlagsEXT-disabledValidationCheckCount-arraylength~^~(VK_EXT_validation_flags)~^~The spec valid usage text states 'disabledValidationCheckCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationFlagsEXT-disabledValidationCheckCount-arraylength)~^~implicit
+VALIDATION_ERROR_14814401~^~Y~^~Unknown~^~VkValidationFlagsEXT~^~VUID-VkValidationFlagsEXT-pDisabledValidationChecks-parameter~^~(VK_EXT_validation_flags)~^~The spec valid usage text states 'pDisabledValidationChecks must be a valid pointer to an array of disabledValidationCheckCount VkValidationCheckEXT values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationFlagsEXT-pDisabledValidationChecks-parameter)~^~implicit
 VALIDATION_ERROR_1482b00b~^~N~^~Unknown~^~VkValidationFlagsEXT~^~VUID-VkValidationFlagsEXT-sType-sType~^~(VK_EXT_validation_flags)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkValidationFlagsEXT-sType-sType)~^~implicit
 VALIDATION_ERROR_14a004d8~^~Y~^~VALIDATION_ERROR_14a004d8~^~VkVertexInputAttributeDescription~^~VUID-VkVertexInputAttributeDescription-location-00620~^~core~^~The spec valid usage text states 'location must be less than VkPhysicalDeviceLimits::maxVertexInputAttributes' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkVertexInputAttributeDescription-location-00620)~^~
 VALIDATION_ERROR_14a004da~^~Y~^~VALIDATION_ERROR_14a004da~^~VkVertexInputAttributeDescription~^~VUID-VkVertexInputAttributeDescription-binding-00621~^~core~^~The spec valid usage text states 'binding must be less than VkPhysicalDeviceLimits::maxVertexInputBindings' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-VkVertexInputAttributeDescription-binding-00621)~^~
@@ -1525,18 +1525,18 @@
 VALIDATION_ERROR_1542b00b~^~Y~^~Unknown~^~VkWaylandSurfaceCreateInfoKHR~^~VUID-VkWaylandSurfaceCreateInfoKHR-sType-sType~^~(VK_KHR_surface)+(VK_KHR_wayland_surface)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWaylandSurfaceCreateInfoKHR-sType-sType)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_15600009~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoKHR~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-commonparent~^~(VK_KHR_win32_keyed_mutex)~^~The spec valid usage text states 'Both of the elements of pAcquireSyncs, and the elements of pReleaseSyncs that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-commonparent)~^~implicit
 VALIDATION_ERROR_156000a2~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoKHR~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireSyncs-00081~^~(VK_KHR_win32_keyed_mutex)~^~The spec valid usage text states 'Each member of pAcquireSyncs and pReleaseSyncs must be a device memory object imported by setting VkImportMemoryWin32HandleInfoKHR::handleType to VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT or VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireSyncs-00081)~^~
-VALIDATION_ERROR_1560e201~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoKHR~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireKeys-parameter~^~(VK_KHR_win32_keyed_mutex)~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireKeys must be a valid pointer to an array of acquireCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireKeys-parameter)~^~implicit
-VALIDATION_ERROR_1560e401~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoKHR~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireSyncs-parameter~^~(VK_KHR_win32_keyed_mutex)~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireSyncs must be a valid pointer to an array of acquireCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireSyncs-parameter)~^~implicit
-VALIDATION_ERROR_1560e801~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoKHR~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireTimeouts-parameter~^~(VK_KHR_win32_keyed_mutex)~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireTimeouts must be a valid pointer to an array of acquireCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireTimeouts-parameter)~^~implicit
-VALIDATION_ERROR_15621201~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoKHR~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseKeys-parameter~^~(VK_KHR_win32_keyed_mutex)~^~The spec valid usage text states 'If releaseCount is not 0, pReleaseKeys must be a valid pointer to an array of releaseCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseKeys-parameter)~^~implicit
-VALIDATION_ERROR_15621401~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoKHR~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseSyncs-parameter~^~(VK_KHR_win32_keyed_mutex)~^~The spec valid usage text states 'If releaseCount is not 0, pReleaseSyncs must be a valid pointer to an array of releaseCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseSyncs-parameter)~^~implicit
+VALIDATION_ERROR_1560e201~^~Y~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoKHR~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireKeys-parameter~^~(VK_KHR_win32_keyed_mutex)~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireKeys must be a valid pointer to an array of acquireCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireKeys-parameter)~^~implicit
+VALIDATION_ERROR_1560e401~^~Y~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoKHR~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireSyncs-parameter~^~(VK_KHR_win32_keyed_mutex)~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireSyncs must be a valid pointer to an array of acquireCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireSyncs-parameter)~^~implicit
+VALIDATION_ERROR_1560e801~^~Y~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoKHR~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireTimeouts-parameter~^~(VK_KHR_win32_keyed_mutex)~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireTimeouts must be a valid pointer to an array of acquireCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pAcquireTimeouts-parameter)~^~implicit
+VALIDATION_ERROR_15621201~^~Y~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoKHR~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseKeys-parameter~^~(VK_KHR_win32_keyed_mutex)~^~The spec valid usage text states 'If releaseCount is not 0, pReleaseKeys must be a valid pointer to an array of releaseCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseKeys-parameter)~^~implicit
+VALIDATION_ERROR_15621401~^~Y~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoKHR~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseSyncs-parameter~^~(VK_KHR_win32_keyed_mutex)~^~The spec valid usage text states 'If releaseCount is not 0, pReleaseSyncs must be a valid pointer to an array of releaseCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-pReleaseSyncs-parameter)~^~implicit
 VALIDATION_ERROR_1562b00b~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoKHR~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-sType-sType~^~(VK_KHR_win32_keyed_mutex)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoKHR-sType-sType)~^~implicit
 VALIDATION_ERROR_15800009~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoNV~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-commonparent~^~(VK_NV_win32_keyed_mutex)~^~The spec valid usage text states 'Both of the elements of pAcquireSyncs, and the elements of pReleaseSyncs that are valid handles must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-commonparent)~^~implicit
-VALIDATION_ERROR_1580e201~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoNV~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireKeys-parameter~^~(VK_NV_win32_keyed_mutex)~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireKeys must be a valid pointer to an array of acquireCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireKeys-parameter)~^~implicit
-VALIDATION_ERROR_1580e401~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoNV~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireSyncs-parameter~^~(VK_NV_win32_keyed_mutex)~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireSyncs must be a valid pointer to an array of acquireCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireSyncs-parameter)~^~implicit
-VALIDATION_ERROR_1580e601~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoNV~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireTimeoutMilliseconds-parameter~^~(VK_NV_win32_keyed_mutex)~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireTimeoutMilliseconds must be a valid pointer to an array of acquireCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireTimeoutMilliseconds-parameter)~^~implicit
-VALIDATION_ERROR_15821201~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoNV~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pReleaseKeys-parameter~^~(VK_NV_win32_keyed_mutex)~^~The spec valid usage text states 'If releaseCount is not 0, pReleaseKeys must be a valid pointer to an array of releaseCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pReleaseKeys-parameter)~^~implicit
-VALIDATION_ERROR_15821401~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoNV~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pReleaseSyncs-parameter~^~(VK_NV_win32_keyed_mutex)~^~The spec valid usage text states 'If releaseCount is not 0, pReleaseSyncs must be a valid pointer to an array of releaseCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pReleaseSyncs-parameter)~^~implicit
+VALIDATION_ERROR_1580e201~^~Y~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoNV~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireKeys-parameter~^~(VK_NV_win32_keyed_mutex)~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireKeys must be a valid pointer to an array of acquireCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireKeys-parameter)~^~implicit
+VALIDATION_ERROR_1580e401~^~Y~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoNV~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireSyncs-parameter~^~(VK_NV_win32_keyed_mutex)~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireSyncs must be a valid pointer to an array of acquireCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireSyncs-parameter)~^~implicit
+VALIDATION_ERROR_1580e601~^~Y~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoNV~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireTimeoutMilliseconds-parameter~^~(VK_NV_win32_keyed_mutex)~^~The spec valid usage text states 'If acquireCount is not 0, pAcquireTimeoutMilliseconds must be a valid pointer to an array of acquireCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pAcquireTimeoutMilliseconds-parameter)~^~implicit
+VALIDATION_ERROR_15821201~^~Y~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoNV~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pReleaseKeys-parameter~^~(VK_NV_win32_keyed_mutex)~^~The spec valid usage text states 'If releaseCount is not 0, pReleaseKeys must be a valid pointer to an array of releaseCount uint64_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pReleaseKeys-parameter)~^~implicit
+VALIDATION_ERROR_15821401~^~Y~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoNV~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pReleaseSyncs-parameter~^~(VK_NV_win32_keyed_mutex)~^~The spec valid usage text states 'If releaseCount is not 0, pReleaseSyncs must be a valid pointer to an array of releaseCount valid VkDeviceMemory handles' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-pReleaseSyncs-parameter)~^~implicit
 VALIDATION_ERROR_1582b00b~^~N~^~Unknown~^~VkWin32KeyedMutexAcquireReleaseInfoNV~^~VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-sType-sType~^~(VK_NV_win32_keyed_mutex)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32KeyedMutexAcquireReleaseInfoNV-sType-sType)~^~implicit, TBD in parameter validation layer.
 VALIDATION_ERROR_15a00a36~^~N~^~Unknown~^~VkWin32SurfaceCreateInfoKHR~^~VUID-VkWin32SurfaceCreateInfoKHR-hinstance-01307~^~(VK_KHR_surface)+(VK_KHR_win32_surface)~^~The spec valid usage text states 'hinstance must be a valid Win32 HINSTANCE.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32SurfaceCreateInfoKHR-hinstance-01307)~^~
 VALIDATION_ERROR_15a00a38~^~Y~^~None~^~VkWin32SurfaceCreateInfoKHR~^~VUID-VkWin32SurfaceCreateInfoKHR-hwnd-01308~^~(VK_KHR_surface)+(VK_KHR_win32_surface)~^~The spec valid usage text states 'hwnd must be a valid Win32 HWND.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkWin32SurfaceCreateInfoKHR-hwnd-01308)~^~
@@ -3434,29 +3434,29 @@
 VALIDATION_ERROR_33e08a1b~^~N~^~Unknown~^~vkWaitForFences~^~VUID-vkWaitForFences-fenceCount-arraylength~^~core~^~The spec valid usage text states 'fenceCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-fenceCount-arraylength)~^~implicit
 VALIDATION_ERROR_33e17201~^~Y~^~Unknown~^~vkWaitForFences~^~VUID-vkWaitForFences-pFences-parameter~^~core~^~The spec valid usage text states 'pFences must be a valid pointer to an array of fenceCount valid VkFence handles' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-pFences-parameter)~^~implicit
 VALIDATION_ERROR_33e17207~^~Y~^~None~^~vkWaitForFences~^~VUID-vkWaitForFences-pFences-parent~^~core~^~The spec valid usage text states 'Each element of pFences must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#VUID-vkWaitForFences-pFences-parent)~^~implicit
-VALIDATION_ERROR_3401c40d~^~N~^~None~^~VkPhysicalDeviceProperties2~^~VUID-VkPhysicalDeviceProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT, VkPhysicalDeviceConservativeRasterizationPropertiesEXT, VkPhysicalDeviceDescriptorIndexingPropertiesEXT, VkPhysicalDeviceDiscardRectanglePropertiesEXT, VkPhysicalDeviceExternalMemoryHostPropertiesEXT, VkPhysicalDeviceIDProperties, VkPhysicalDeviceMaintenance3Properties, VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, VkPhysicalDeviceMultiviewProperties, VkPhysicalDevicePointClippingProperties, VkPhysicalDeviceProtectedMemoryProperties, VkPhysicalDevicePushDescriptorPropertiesKHR, VkPhysicalDeviceSampleLocationsPropertiesEXT, VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, VkPhysicalDeviceShaderCorePropertiesAMD, VkPhysicalDeviceSubgroupProperties, or VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProperties2-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3401c40d~^~Y~^~None~^~VkPhysicalDeviceProperties2~^~VUID-VkPhysicalDeviceProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT, VkPhysicalDeviceConservativeRasterizationPropertiesEXT, VkPhysicalDeviceDescriptorIndexingPropertiesEXT, VkPhysicalDeviceDiscardRectanglePropertiesEXT, VkPhysicalDeviceExternalMemoryHostPropertiesEXT, VkPhysicalDeviceIDProperties, VkPhysicalDeviceMaintenance3Properties, VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, VkPhysicalDeviceMultiviewProperties, VkPhysicalDevicePointClippingProperties, VkPhysicalDeviceProtectedMemoryProperties, VkPhysicalDevicePushDescriptorPropertiesKHR, VkPhysicalDeviceSampleLocationsPropertiesEXT, VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, VkPhysicalDeviceShaderCorePropertiesAMD, VkPhysicalDeviceSubgroupProperties, or VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProperties2-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3402b00b~^~Y~^~None~^~VkPhysicalDeviceProperties2~^~VUID-VkPhysicalDeviceProperties2-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProperties2-sType-sType)~^~implicit
 VALIDATION_ERROR_3402b00f~^~N~^~None~^~VkPhysicalDeviceProperties2~^~VUID-VkPhysicalDeviceProperties2-sType-unique~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceProperties2-sType-unique)~^~implicit
-VALIDATION_ERROR_3421c40d~^~N~^~None~^~VkFormatProperties2~^~VUID-VkFormatProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkFormatProperties2-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3421c40d~^~Y~^~None~^~VkFormatProperties2~^~VUID-VkFormatProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkFormatProperties2-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3422b00b~^~Y~^~None~^~VkFormatProperties2~^~VUID-VkFormatProperties2-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkFormatProperties2-sType-sType)~^~implicit
-VALIDATION_ERROR_3441c40d~^~N~^~None~^~VkImageFormatProperties2~^~VUID-VkImageFormatProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkAndroidHardwareBufferUsageANDROID, VkExternalImageFormatProperties, VkSamplerYcbcrConversionImageFormatProperties, or VkTextureLODGatherFormatPropertiesAMD' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatProperties2-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3441c40d~^~Y~^~None~^~VkImageFormatProperties2~^~VUID-VkImageFormatProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkAndroidHardwareBufferUsageANDROID, VkExternalImageFormatProperties, VkSamplerYcbcrConversionImageFormatProperties, or VkTextureLODGatherFormatPropertiesAMD' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatProperties2-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3442b00b~^~Y~^~None~^~VkImageFormatProperties2~^~VUID-VkImageFormatProperties2-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatProperties2-sType-sType)~^~implicit
 VALIDATION_ERROR_3442b00f~^~N~^~None~^~VkImageFormatProperties2~^~VUID-VkImageFormatProperties2-sType-unique~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'Each sType member in the pNext chain must be unique' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatProperties2-sType-unique)~^~implicit
-VALIDATION_ERROR_3461c40d~^~N~^~None~^~VkPhysicalDeviceMemoryProperties2~^~VUID-VkPhysicalDeviceMemoryProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMemoryProperties2-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3461c40d~^~Y~^~None~^~VkPhysicalDeviceMemoryProperties2~^~VUID-VkPhysicalDeviceMemoryProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMemoryProperties2-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3462b00b~^~Y~^~None~^~VkPhysicalDeviceMemoryProperties2~^~VUID-VkPhysicalDeviceMemoryProperties2-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMemoryProperties2-sType-sType)~^~implicit
-VALIDATION_ERROR_3481c40d~^~N~^~None~^~VkSurfaceCapabilities2KHR~^~VUID-VkSurfaceCapabilities2KHR-pNext-pNext~^~(VK_KHR_surface)+(VK_KHR_get_surface_capabilities2)~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkSharedPresentSurfaceCapabilitiesKHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceCapabilities2KHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3481c40d~^~Y~^~None~^~VkSurfaceCapabilities2KHR~^~VUID-VkSurfaceCapabilities2KHR-pNext-pNext~^~(VK_KHR_surface)+(VK_KHR_get_surface_capabilities2)~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkSharedPresentSurfaceCapabilitiesKHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceCapabilities2KHR-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3482b00b~^~Y~^~None~^~VkSurfaceCapabilities2KHR~^~VUID-VkSurfaceCapabilities2KHR-sType-sType~^~(VK_KHR_surface)+(VK_KHR_get_surface_capabilities2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceCapabilities2KHR-sType-sType)~^~implicit
-VALIDATION_ERROR_34a1c40d~^~N~^~None~^~VkDeviceGroupPresentCapabilitiesKHR~^~VUID-VkDeviceGroupPresentCapabilitiesKHR-pNext-pNext~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupPresentCapabilitiesKHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_34a1c40d~^~Y~^~None~^~VkDeviceGroupPresentCapabilitiesKHR~^~VUID-VkDeviceGroupPresentCapabilitiesKHR-pNext-pNext~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupPresentCapabilitiesKHR-pNext-pNext)~^~implicit
 VALIDATION_ERROR_34a2b00b~^~Y~^~None~^~VkDeviceGroupPresentCapabilitiesKHR~^~VUID-VkDeviceGroupPresentCapabilitiesKHR-sType-sType~^~(VK_KHR_surface)+(VK_KHR_swapchain)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceGroupPresentCapabilitiesKHR-sType-sType)~^~implicit
-VALIDATION_ERROR_34c1c40d~^~N~^~None~^~VkExternalBufferProperties~^~VUID-VkExternalBufferProperties-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalBufferProperties-pNext-pNext)~^~implicit
+VALIDATION_ERROR_34c1c40d~^~Y~^~None~^~VkExternalBufferProperties~^~VUID-VkExternalBufferProperties-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalBufferProperties-pNext-pNext)~^~implicit
 VALIDATION_ERROR_34c2b00b~^~Y~^~None~^~VkExternalBufferProperties~^~VUID-VkExternalBufferProperties-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalBufferProperties-sType-sType)~^~implicit
-VALIDATION_ERROR_3521c40d~^~N~^~None~^~VkExternalSemaphoreProperties~^~VUID-VkExternalSemaphoreProperties-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_semaphore_capabilities)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalSemaphoreProperties-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3521c40d~^~Y~^~None~^~VkExternalSemaphoreProperties~^~VUID-VkExternalSemaphoreProperties-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_semaphore_capabilities)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalSemaphoreProperties-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3522b00b~^~Y~^~None~^~VkExternalSemaphoreProperties~^~VUID-VkExternalSemaphoreProperties-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_semaphore_capabilities)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalSemaphoreProperties-sType-sType)~^~implicit
-VALIDATION_ERROR_3541c40d~^~N~^~None~^~VkQueueFamilyProperties2~^~VUID-VkQueueFamilyProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkQueueFamilyProperties2-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3541c40d~^~Y~^~None~^~VkQueueFamilyProperties2~^~VUID-VkQueueFamilyProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkQueueFamilyProperties2-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3542b00b~^~N~^~None~^~VkQueueFamilyProperties2~^~VUID-VkQueueFamilyProperties2-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkQueueFamilyProperties2-sType-sType)~^~implicit
-VALIDATION_ERROR_3561c40d~^~N~^~None~^~VkSparseImageFormatProperties2~^~VUID-VkSparseImageFormatProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSparseImageFormatProperties2-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3561c40d~^~Y~^~None~^~VkSparseImageFormatProperties2~^~VUID-VkSparseImageFormatProperties2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSparseImageFormatProperties2-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3562b00b~^~N~^~None~^~VkSparseImageFormatProperties2~^~VUID-VkSparseImageFormatProperties2-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSparseImageFormatProperties2-sType-sType)~^~implicit
-VALIDATION_ERROR_3581c40d~^~N~^~None~^~VkSurfaceFormat2KHR~^~VUID-VkSurfaceFormat2KHR-pNext-pNext~^~(VK_KHR_surface)+(VK_KHR_get_surface_capabilities2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceFormat2KHR-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3581c40d~^~Y~^~None~^~VkSurfaceFormat2KHR~^~VUID-VkSurfaceFormat2KHR-pNext-pNext~^~(VK_KHR_surface)+(VK_KHR_get_surface_capabilities2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceFormat2KHR-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3582b00b~^~N~^~None~^~VkSurfaceFormat2KHR~^~VUID-VkSurfaceFormat2KHR-sType-sType~^~(VK_KHR_surface)+(VK_KHR_get_surface_capabilities2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSurfaceFormat2KHR-sType-sType)~^~implicit
 VALIDATION_ERROR_35c2b00b~^~N~^~None~^~VkPhysicalDeviceMultiviewProperties~^~VUID-VkPhysicalDeviceMultiviewProperties-sType-sType~^~(VK_VERSION_1_1,VK_KHR_multiview)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceMultiviewProperties-sType-sType)~^~implicit
 VALIDATION_ERROR_3602b00b~^~N~^~None~^~VkExternalImageFormatProperties~^~VUID-VkExternalImageFormatProperties-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_physical_device_properties2)+(VK_VERSION_1_1,VK_KHR_external_memory_capabilities)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalImageFormatProperties-sType-sType)~^~implicit
@@ -3470,24 +3470,24 @@
 VALIDATION_ERROR_38800b22~^~N~^~None~^~VkPipelineColorBlendAdvancedStateCreateInfoEXT~^~VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-dstPremultiplied-01425~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'If the non-premultiplied destination color property is not supported, dstPremultiplied must be VK_TRUE' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-dstPremultiplied-01425)~^~
 VALIDATION_ERROR_38800b24~^~N~^~None~^~VkPipelineColorBlendAdvancedStateCreateInfoEXT~^~VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-01426~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'If the correlated overlap property is not supported, blendOverlap must be VK_BLEND_OVERLAP_UNCORRELATED_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-01426)~^~
 VALIDATION_ERROR_3882b00b~^~N~^~None~^~VkPipelineColorBlendAdvancedStateCreateInfoEXT~^~VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-sType-sType~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-sType-sType)~^~implicit
-VALIDATION_ERROR_38834a01~^~N~^~None~^~VkPipelineColorBlendAdvancedStateCreateInfoEXT~^~VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-parameter~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'blendOverlap must be a valid VkBlendOverlapEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-parameter)~^~implicit
+VALIDATION_ERROR_38834a01~^~Y~^~None~^~VkPipelineColorBlendAdvancedStateCreateInfoEXT~^~VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-parameter~^~(VK_EXT_blend_operation_advanced)~^~The spec valid usage text states 'blendOverlap must be a valid VkBlendOverlapEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineColorBlendAdvancedStateCreateInfoEXT-blendOverlap-parameter)~^~implicit
 VALIDATION_ERROR_38a00afa~^~N~^~None~^~VkPipelineCoverageModulationStateCreateInfoNV~^~VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationTableEnable-01405~^~(VK_NV_framebuffer_mixed_samples)~^~The spec valid usage text states 'If coverageModulationTableEnable is VK_TRUE, coverageModulationTableCount must be equal to the number of rasterization samples divided by the number of color samples in the subpass.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationTableEnable-01405)~^~
-VALIDATION_ERROR_38a09005~^~N~^~None~^~VkPipelineCoverageModulationStateCreateInfoNV~^~VUID-VkPipelineCoverageModulationStateCreateInfoNV-flags-zerobitmask~^~(VK_NV_framebuffer_mixed_samples)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-flags-zerobitmask)~^~implicit
+VALIDATION_ERROR_38a09005~^~Y~^~None~^~VkPipelineCoverageModulationStateCreateInfoNV~^~VUID-VkPipelineCoverageModulationStateCreateInfoNV-flags-zerobitmask~^~(VK_NV_framebuffer_mixed_samples)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-flags-zerobitmask)~^~implicit
 VALIDATION_ERROR_38a2b00b~^~N~^~None~^~VkPipelineCoverageModulationStateCreateInfoNV~^~VUID-VkPipelineCoverageModulationStateCreateInfoNV-sType-sType~^~(VK_NV_framebuffer_mixed_samples)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-sType-sType)~^~implicit
-VALIDATION_ERROR_38a34c01~^~N~^~None~^~VkPipelineCoverageModulationStateCreateInfoNV~^~VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationMode-parameter~^~(VK_NV_framebuffer_mixed_samples)~^~The spec valid usage text states 'coverageModulationMode must be a valid VkCoverageModulationModeNV value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationMode-parameter)~^~implicit
+VALIDATION_ERROR_38a34c01~^~Y~^~None~^~VkPipelineCoverageModulationStateCreateInfoNV~^~VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationMode-parameter~^~(VK_NV_framebuffer_mixed_samples)~^~The spec valid usage text states 'coverageModulationMode must be a valid VkCoverageModulationModeNV value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationMode-parameter)~^~implicit
 VALIDATION_ERROR_38a34e1b~^~N~^~None~^~VkPipelineCoverageModulationStateCreateInfoNV~^~VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationTableCount-arraylength~^~(VK_NV_framebuffer_mixed_samples)~^~The spec valid usage text states 'coverageModulationTableCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageModulationStateCreateInfoNV-coverageModulationTableCount-arraylength)~^~implicit
 VALIDATION_ERROR_38c00af8~^~N~^~None~^~VkPipelineCoverageToColorStateCreateInfoNV~^~VUID-VkPipelineCoverageToColorStateCreateInfoNV-coverageToColorEnable-01404~^~(VK_NV_fragment_coverage_to_color)~^~The spec valid usage text states 'If coverageToColorEnable is VK_TRUE, then the render pass subpass indicated by VkGraphicsPipelineCreateInfo::renderPass and VkGraphicsPipelineCreateInfo::subpass must have a color attachment at the location selected by coverageToColorLocation, with a VkFormat of VK_FORMAT_R8_UINT, VK_FORMAT_R8_SINT, VK_FORMAT_R16_UINT, VK_FORMAT_R16_SINT, VK_FORMAT_R32_UINT, or VK_FORMAT_R32_SINT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageToColorStateCreateInfoNV-coverageToColorEnable-01404)~^~
-VALIDATION_ERROR_38c09005~^~N~^~None~^~VkPipelineCoverageToColorStateCreateInfoNV~^~VUID-VkPipelineCoverageToColorStateCreateInfoNV-flags-zerobitmask~^~(VK_NV_fragment_coverage_to_color)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageToColorStateCreateInfoNV-flags-zerobitmask)~^~implicit
+VALIDATION_ERROR_38c09005~^~Y~^~None~^~VkPipelineCoverageToColorStateCreateInfoNV~^~VUID-VkPipelineCoverageToColorStateCreateInfoNV-flags-zerobitmask~^~(VK_NV_fragment_coverage_to_color)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageToColorStateCreateInfoNV-flags-zerobitmask)~^~implicit
 VALIDATION_ERROR_38c2b00b~^~N~^~None~^~VkPipelineCoverageToColorStateCreateInfoNV~^~VUID-VkPipelineCoverageToColorStateCreateInfoNV-sType-sType~^~(VK_NV_fragment_coverage_to_color)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineCoverageToColorStateCreateInfoNV-sType-sType)~^~implicit
 VALIDATION_ERROR_38e2b00b~^~N~^~None~^~VkSamplerReductionModeCreateInfoEXT~^~VUID-VkSamplerReductionModeCreateInfoEXT-sType-sType~^~(VK_EXT_sampler_filter_minmax)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-sType-sType)~^~implicit
-VALIDATION_ERROR_38e35001~^~N~^~None~^~VkSamplerReductionModeCreateInfoEXT~^~VUID-VkSamplerReductionModeCreateInfoEXT-reductionMode-parameter~^~(VK_EXT_sampler_filter_minmax)~^~The spec valid usage text states 'reductionMode must be a valid VkSamplerReductionModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-reductionMode-parameter)~^~implicit
+VALIDATION_ERROR_38e35001~^~Y~^~None~^~VkSamplerReductionModeCreateInfoEXT~^~VUID-VkSamplerReductionModeCreateInfoEXT-reductionMode-parameter~^~(VK_EXT_sampler_filter_minmax)~^~The spec valid usage text states 'reductionMode must be a valid VkSamplerReductionModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerReductionModeCreateInfoEXT-reductionMode-parameter)~^~implicit
 VALIDATION_ERROR_39400b4c~^~N~^~None~^~VkExportFenceCreateInfo~^~VUID-VkExportFenceCreateInfo-handleTypes-01446~^~(VK_VERSION_1_1,VK_KHR_external_fence)~^~The spec valid usage text states 'The bits in handleTypes must be supported and compatible, as reported by VkExternalFenceProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceCreateInfo-handleTypes-01446)~^~
-VALIDATION_ERROR_39409e01~^~N~^~None~^~VkExportFenceCreateInfo~^~VUID-VkExportFenceCreateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_fence)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalFenceHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceCreateInfo-handleTypes-parameter)~^~implicit
+VALIDATION_ERROR_39409e01~^~Y~^~None~^~VkExportFenceCreateInfo~^~VUID-VkExportFenceCreateInfo-handleTypes-parameter~^~(VK_VERSION_1_1,VK_KHR_external_fence)~^~The spec valid usage text states 'handleTypes must be a valid combination of VkExternalFenceHandleTypeFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceCreateInfo-handleTypes-parameter)~^~implicit
 VALIDATION_ERROR_3942b00b~^~N~^~None~^~VkExportFenceCreateInfo~^~VUID-VkExportFenceCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_fence)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExportFenceCreateInfo-sType-sType)~^~implicit
 VALIDATION_ERROR_39609c01~^~Y~^~None~^~VkPhysicalDeviceExternalFenceInfo~^~VUID-VkPhysicalDeviceExternalFenceInfo-handleType-parameter~^~(VK_VERSION_1_1,VK_KHR_external_fence_capabilities)~^~The spec valid usage text states 'handleType must be a valid VkExternalFenceHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalFenceInfo-handleType-parameter)~^~implicit
 VALIDATION_ERROR_3961c40d~^~Y~^~None~^~VkPhysicalDeviceExternalFenceInfo~^~VUID-VkPhysicalDeviceExternalFenceInfo-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_fence_capabilities)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalFenceInfo-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3962b00b~^~Y~^~None~^~VkPhysicalDeviceExternalFenceInfo~^~VUID-VkPhysicalDeviceExternalFenceInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_fence_capabilities)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalFenceInfo-sType-sType)~^~implicit
-VALIDATION_ERROR_3981c40d~^~N~^~None~^~VkExternalFenceProperties~^~VUID-VkExternalFenceProperties-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_fence_capabilities)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalFenceProperties-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3981c40d~^~Y~^~None~^~VkExternalFenceProperties~^~VUID-VkExternalFenceProperties-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_external_fence_capabilities)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalFenceProperties-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3982b00b~^~Y~^~None~^~VkExternalFenceProperties~^~VUID-VkExternalFenceProperties-sType-sType~^~(VK_VERSION_1_1,VK_KHR_external_fence_capabilities)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalFenceProperties-sType-sType)~^~implicit
 VALIDATION_ERROR_39a27a01~^~Y~^~None~^~vkGetPhysicalDeviceExternalFenceProperties~^~VUID-vkGetPhysicalDeviceExternalFenceProperties-physicalDevice-parameter~^~(VK_VERSION_1_1,VK_KHR_external_fence_capabilities)~^~The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalFenceProperties-physicalDevice-parameter)~^~implicit
 VALIDATION_ERROR_39a3a201~^~N~^~None~^~vkGetPhysicalDeviceExternalFenceProperties~^~VUID-vkGetPhysicalDeviceExternalFenceProperties-pExternalFenceInfo-parameter~^~(VK_VERSION_1_1,VK_KHR_external_fence_capabilities)~^~The spec valid usage text states 'pExternalFenceInfo must be a valid pointer to a valid VkPhysicalDeviceExternalFenceInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetPhysicalDeviceExternalFenceProperties-pExternalFenceInfo-parameter)~^~implicit
@@ -3602,9 +3602,9 @@
 VALIDATION_ERROR_3be0a001~^~Y~^~None~^~VkImageSparseMemoryRequirementsInfo2~^~VUID-VkImageSparseMemoryRequirementsInfo2-image-parameter~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'image must be a valid VkImage handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageSparseMemoryRequirementsInfo2-image-parameter)~^~implicit
 VALIDATION_ERROR_3be1c40d~^~Y~^~None~^~VkImageSparseMemoryRequirementsInfo2~^~VUID-VkImageSparseMemoryRequirementsInfo2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageSparseMemoryRequirementsInfo2-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3be2b00b~^~Y~^~None~^~VkImageSparseMemoryRequirementsInfo2~^~VUID-VkImageSparseMemoryRequirementsInfo2-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageSparseMemoryRequirementsInfo2-sType-sType)~^~implicit
-VALIDATION_ERROR_3c01c40d~^~N~^~None~^~VkMemoryRequirements2~^~VUID-VkMemoryRequirements2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkMemoryDedicatedRequirements' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryRequirements2-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3c01c40d~^~Y~^~None~^~VkMemoryRequirements2~^~VUID-VkMemoryRequirements2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkMemoryDedicatedRequirements' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryRequirements2-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3c02b00b~^~Y~^~None~^~VkMemoryRequirements2~^~VUID-VkMemoryRequirements2-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryRequirements2-sType-sType)~^~implicit
-VALIDATION_ERROR_3c21c40d~^~N~^~None~^~VkSparseImageMemoryRequirements2~^~VUID-VkSparseImageMemoryRequirements2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSparseImageMemoryRequirements2-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3c21c40d~^~Y~^~None~^~VkSparseImageMemoryRequirements2~^~VUID-VkSparseImageMemoryRequirements2-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSparseImageMemoryRequirements2-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3c22b00b~^~N~^~None~^~VkSparseImageMemoryRequirements2~^~VUID-VkSparseImageMemoryRequirements2-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSparseImageMemoryRequirements2-sType-sType)~^~implicit
 VALIDATION_ERROR_3c405601~^~Y~^~None~^~vkGetImageMemoryRequirements2~^~VUID-vkGetImageMemoryRequirements2-device-parameter~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetImageMemoryRequirements2-device-parameter)~^~implicit
 VALIDATION_ERROR_3c41b401~^~N~^~None~^~vkGetImageMemoryRequirements2~^~VUID-vkGetImageMemoryRequirements2-pMemoryRequirements-parameter~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)~^~The spec valid usage text states 'pMemoryRequirements must be a valid pointer to a VkMemoryRequirements2 structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetImageMemoryRequirements2-pMemoryRequirements-parameter)~^~implicit
@@ -3626,12 +3626,12 @@
 VALIDATION_ERROR_3ce3b41b~^~Y~^~None~^~VkSampleLocationsInfoEXT~^~VUID-VkSampleLocationsInfoEXT-sampleLocationsCount-arraylength~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sampleLocationsCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-sampleLocationsCount-arraylength)~^~implicit
 VALIDATION_ERROR_3ce3b601~^~Y~^~None~^~VkSampleLocationsInfoEXT~^~VUID-VkSampleLocationsInfoEXT-pSampleLocations-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'pSampleLocations must be a valid pointer to an array of sampleLocationsCount VkSampleLocationEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSampleLocationsInfoEXT-pSampleLocations-parameter)~^~implicit
 VALIDATION_ERROR_3d02b00b~^~N~^~None~^~VkRenderPassSampleLocationsBeginInfoEXT~^~VUID-VkRenderPassSampleLocationsBeginInfoEXT-sType-sType~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassSampleLocationsBeginInfoEXT-sType-sType)~^~implicit
-VALIDATION_ERROR_3d03ba01~^~N~^~None~^~VkRenderPassSampleLocationsBeginInfoEXT~^~VUID-VkRenderPassSampleLocationsBeginInfoEXT-pAttachmentInitialSampleLocations-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If attachmentInitialSampleLocationsCount is not 0, pAttachmentInitialSampleLocations must be a valid pointer to an array of attachmentInitialSampleLocationsCount valid VkAttachmentSampleLocationsEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassSampleLocationsBeginInfoEXT-pAttachmentInitialSampleLocations-parameter)~^~implicit
-VALIDATION_ERROR_3d03e801~^~N~^~None~^~VkRenderPassSampleLocationsBeginInfoEXT~^~VUID-VkRenderPassSampleLocationsBeginInfoEXT-pPostSubpassSampleLocations-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If postSubpassSampleLocationsCount is not 0, pPostSubpassSampleLocations must be a valid pointer to an array of postSubpassSampleLocationsCount valid VkSubpassSampleLocationsEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassSampleLocationsBeginInfoEXT-pPostSubpassSampleLocations-parameter)~^~implicit
+VALIDATION_ERROR_3d03ba01~^~Y~^~None~^~VkRenderPassSampleLocationsBeginInfoEXT~^~VUID-VkRenderPassSampleLocationsBeginInfoEXT-pAttachmentInitialSampleLocations-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If attachmentInitialSampleLocationsCount is not 0, pAttachmentInitialSampleLocations must be a valid pointer to an array of attachmentInitialSampleLocationsCount valid VkAttachmentSampleLocationsEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassSampleLocationsBeginInfoEXT-pAttachmentInitialSampleLocations-parameter)~^~implicit
+VALIDATION_ERROR_3d03e801~^~Y~^~None~^~VkRenderPassSampleLocationsBeginInfoEXT~^~VUID-VkRenderPassSampleLocationsBeginInfoEXT-pPostSubpassSampleLocations-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'If postSubpassSampleLocationsCount is not 0, pPostSubpassSampleLocations must be a valid pointer to an array of postSubpassSampleLocationsCount valid VkSubpassSampleLocationsEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassSampleLocationsBeginInfoEXT-pPostSubpassSampleLocations-parameter)~^~implicit
 VALIDATION_ERROR_3d22b00b~^~N~^~None~^~VkPipelineSampleLocationsStateCreateInfoEXT~^~VUID-VkPipelineSampleLocationsStateCreateInfoEXT-sType-sType~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineSampleLocationsStateCreateInfoEXT-sType-sType)~^~implicit
 VALIDATION_ERROR_3d23c601~^~N~^~None~^~VkPipelineSampleLocationsStateCreateInfoEXT~^~VUID-VkPipelineSampleLocationsStateCreateInfoEXT-sampleLocationsInfo-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sampleLocationsInfo must be a valid VkSampleLocationsInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineSampleLocationsStateCreateInfoEXT-sampleLocationsInfo-parameter)~^~implicit
 VALIDATION_ERROR_3d42b00b~^~N~^~None~^~VkPhysicalDeviceSampleLocationsPropertiesEXT~^~VUID-VkPhysicalDeviceSampleLocationsPropertiesEXT-sType-sType~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceSampleLocationsPropertiesEXT-sType-sType)~^~implicit
-VALIDATION_ERROR_3d61c40d~^~N~^~None~^~VkMultisamplePropertiesEXT~^~VUID-VkMultisamplePropertiesEXT-pNext-pNext~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMultisamplePropertiesEXT-pNext-pNext)~^~implicit
+VALIDATION_ERROR_3d61c40d~^~Y~^~None~^~VkMultisamplePropertiesEXT~^~VUID-VkMultisamplePropertiesEXT-pNext-pNext~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMultisamplePropertiesEXT-pNext-pNext)~^~implicit
 VALIDATION_ERROR_3d62b00b~^~Y~^~None~^~VkMultisamplePropertiesEXT~^~VUID-VkMultisamplePropertiesEXT-sType-sType~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMultisamplePropertiesEXT-sType-sType)~^~implicit
 VALIDATION_ERROR_3d827a01~^~Y~^~None~^~vkGetPhysicalDeviceMultisamplePropertiesEXT~^~VUID-vkGetPhysicalDeviceMultisamplePropertiesEXT-physicalDevice-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'physicalDevice must be a valid VkPhysicalDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetPhysicalDeviceMultisamplePropertiesEXT-physicalDevice-parameter)~^~implicit
 VALIDATION_ERROR_3d82b401~^~Y~^~None~^~vkGetPhysicalDeviceMultisamplePropertiesEXT~^~VUID-vkGetPhysicalDeviceMultisamplePropertiesEXT-samples-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'samples must be a valid VkSampleCountFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetPhysicalDeviceMultisamplePropertiesEXT-samples-parameter)~^~implicit
@@ -3679,19 +3679,19 @@
 VALIDATION_ERROR_3ea3c601~^~N~^~None~^~VkSubpassSampleLocationsEXT~^~VUID-VkSubpassSampleLocationsEXT-sampleLocationsInfo-parameter~^~(VK_EXT_sample_locations)~^~The spec valid usage text states 'sampleLocationsInfo must be a valid VkSampleLocationsInfoEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSubpassSampleLocationsEXT-sampleLocationsInfo-parameter)~^~implicit
 VALIDATION_ERROR_3ec2b00b~^~N~^~None~^~VkPhysicalDevicePointClippingProperties~^~VUID-VkPhysicalDevicePointClippingProperties-sType-sType~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDevicePointClippingProperties-sType-sType)~^~implicit
 VALIDATION_ERROR_3ee00c01~^~N~^~None~^~VkInputAttachmentAspectReference~^~VUID-VkInputAttachmentAspectReference-aspectMask-parameter~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'aspectMask must be a valid combination of VkImageAspectFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-aspectMask-parameter)~^~implicit
-VALIDATION_ERROR_3ee00c03~^~N~^~None~^~VkInputAttachmentAspectReference~^~VUID-VkInputAttachmentAspectReference-aspectMask-requiredbitmask~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'aspectMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-aspectMask-requiredbitmask)~^~implicit
+VALIDATION_ERROR_3ee00c03~^~Y~^~None~^~VkInputAttachmentAspectReference~^~VUID-VkInputAttachmentAspectReference-aspectMask-requiredbitmask~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'aspectMask must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-aspectMask-requiredbitmask)~^~implicit
 VALIDATION_ERROR_3ee00c40~^~N~^~None~^~VkInputAttachmentAspectReference~^~VUID-VkInputAttachmentAspectReference-pCreateInfo-01568~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'There must be an input attachment at pCreateInfo::pSubpasses[subpass].pInputAttachments[inputAttachmentIndex].' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-pCreateInfo-01568)~^~
 VALIDATION_ERROR_3ee00c42~^~N~^~None~^~VkInputAttachmentAspectReference~^~VUID-VkInputAttachmentAspectReference-None-01569~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'The specified input attachment must have more than one aspect mask.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-None-01569)~^~
 VALIDATION_ERROR_3ee00c44~^~N~^~None~^~VkInputAttachmentAspectReference~^~VUID-VkInputAttachmentAspectReference-aspectMask-01570~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'aspectMask must be a subset of the aspect masks in the specified input attachment.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkInputAttachmentAspectReference-aspectMask-01570)~^~
 VALIDATION_ERROR_3f02b00b~^~N~^~None~^~VkRenderPassInputAttachmentAspectCreateInfo~^~VUID-VkRenderPassInputAttachmentAspectCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassInputAttachmentAspectCreateInfo-sType-sType)~^~implicit
-VALIDATION_ERROR_3f03ce1b~^~N~^~None~^~VkRenderPassInputAttachmentAspectCreateInfo~^~VUID-VkRenderPassInputAttachmentAspectCreateInfo-aspectReferenceCount-arraylength~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'aspectReferenceCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassInputAttachmentAspectCreateInfo-aspectReferenceCount-arraylength)~^~implicit
-VALIDATION_ERROR_3f03d001~^~N~^~None~^~VkRenderPassInputAttachmentAspectCreateInfo~^~VUID-VkRenderPassInputAttachmentAspectCreateInfo-pAspectReferences-parameter~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'pAspectReferences must be a valid pointer to an array of aspectReferenceCount valid VkInputAttachmentAspectReference structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassInputAttachmentAspectCreateInfo-pAspectReferences-parameter)~^~implicit
+VALIDATION_ERROR_3f03ce1b~^~Y~^~None~^~VkRenderPassInputAttachmentAspectCreateInfo~^~VUID-VkRenderPassInputAttachmentAspectCreateInfo-aspectReferenceCount-arraylength~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'aspectReferenceCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassInputAttachmentAspectCreateInfo-aspectReferenceCount-arraylength)~^~implicit
+VALIDATION_ERROR_3f03d001~^~Y~^~None~^~VkRenderPassInputAttachmentAspectCreateInfo~^~VUID-VkRenderPassInputAttachmentAspectCreateInfo-pAspectReferences-parameter~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'pAspectReferences must be a valid pointer to an array of aspectReferenceCount valid VkInputAttachmentAspectReference structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkRenderPassInputAttachmentAspectCreateInfo-pAspectReferences-parameter)~^~implicit
 VALIDATION_ERROR_3f200c66~^~Y~^~InvalidImageViewUsageCreateInfo~^~VkImageViewUsageCreateInfo~^~VUID-VkImageViewUsageCreateInfo-usage-01587~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'usage must not include any set bits that were not set in the usage member of the VkImageCreateInfo structure used to create the image this image view is created from.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-usage-01587)~^~
 VALIDATION_ERROR_3f22b00b~^~N~^~None~^~VkImageViewUsageCreateInfo~^~VUID-VkImageViewUsageCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-sType-sType)~^~implicit
 VALIDATION_ERROR_3f230601~^~Y~^~InvalidImageViewUsageCreateInfo~^~VkImageViewUsageCreateInfo~^~VUID-VkImageViewUsageCreateInfo-usage-parameter~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'usage must be a valid combination of VkImageUsageFlagBits values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-usage-parameter)~^~implicit
 VALIDATION_ERROR_3f230603~^~Y~^~InvalidImageViewUsageCreateInfo~^~VkImageViewUsageCreateInfo~^~VUID-VkImageViewUsageCreateInfo-usage-requiredbitmask~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'usage must not be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageViewUsageCreateInfo-usage-requiredbitmask)~^~implicit
 VALIDATION_ERROR_3f42b00b~^~N~^~None~^~VkPipelineTessellationDomainOriginStateCreateInfo~^~VUID-VkPipelineTessellationDomainOriginStateCreateInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineTessellationDomainOriginStateCreateInfo-sType-sType)~^~implicit
-VALIDATION_ERROR_3f43d201~^~N~^~None~^~VkPipelineTessellationDomainOriginStateCreateInfo~^~VUID-VkPipelineTessellationDomainOriginStateCreateInfo-domainOrigin-parameter~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'domainOrigin must be a valid VkTessellationDomainOrigin value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineTessellationDomainOriginStateCreateInfo-domainOrigin-parameter)~^~implicit
+VALIDATION_ERROR_3f43d201~^~Y~^~None~^~VkPipelineTessellationDomainOriginStateCreateInfo~^~VUID-VkPipelineTessellationDomainOriginStateCreateInfo-domainOrigin-parameter~^~(VK_VERSION_1_1,VK_KHR_maintenance2)~^~The spec valid usage text states 'domainOrigin must be a valid VkTessellationDomainOrigin value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineTessellationDomainOriginStateCreateInfo-domainOrigin-parameter)~^~implicit
 VALIDATION_ERROR_3f600c54~^~N~^~None~^~VkImageFormatListCreateInfoKHR~^~VUID-VkImageFormatListCreateInfoKHR-viewFormatCount-01578~^~(VK_KHR_image_format_list)~^~The spec valid usage text states 'If viewFormatCount is not 0, all of the formats in the pViewFormats array must be compatible with the format specified in the format field of VkImageCreateInfo, as described in the compatibility table.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-viewFormatCount-01578)~^~
 VALIDATION_ERROR_3f600c56~^~N~^~None~^~VkImageFormatListCreateInfoKHR~^~VUID-VkImageFormatListCreateInfoKHR-flags-01579~^~(VK_KHR_image_format_list)~^~The spec valid usage text states 'If VkImageCreateInfo::flags does not contain VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT, viewFormatCount must be 0 or 1.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-flags-01579)~^~
 VALIDATION_ERROR_3f600c58~^~N~^~None~^~VkImageFormatListCreateInfoKHR~^~VUID-VkImageFormatListCreateInfoKHR-viewFormatCount-01580~^~(VK_KHR_image_format_list)~^~The spec valid usage text states 'If viewFormatCount is not 0, VkImageCreateInfo::format must be in pViewFormats.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImageFormatListCreateInfoKHR-viewFormatCount-01580)~^~
@@ -3719,10 +3719,10 @@
 VALIDATION_ERROR_3fa00cd4~^~N~^~None~^~VkBindImagePlaneMemoryInfo~^~VUID-VkBindImagePlaneMemoryInfo-planeAspect-01642~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'planeAspect must be a single valid plane aspect for the image format (that is, planeAspect must be VK_IMAGE_ASPECT_PLANE_0_BIT or VK_IMAGE_ASPECT_PLANE_1_BIT for "_2PLANE" formats and planeAspect must be VK_IMAGE_ASPECT_PLANE_0_BIT, VK_IMAGE_ASPECT_PLANE_1_BIT, or VK_IMAGE_ASPECT_PLANE_2_BIT for "_3PLANE" formats)' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImagePlaneMemoryInfo-planeAspect-01642)~^~
 VALIDATION_ERROR_3fa00cd6~^~N~^~None~^~VkBindImagePlaneMemoryInfo~^~VUID-VkBindImagePlaneMemoryInfo-None-01643~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'A single call to vkBindImageMemory2 must bind all or none of the planes of an image (i.e. bindings to all planes of an image must be made in a single vkBindImageMemory2 call), as separate bindings' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImagePlaneMemoryInfo-None-01643)~^~
 VALIDATION_ERROR_3fa2b00b~^~N~^~None~^~VkBindImagePlaneMemoryInfo~^~VUID-VkBindImagePlaneMemoryInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImagePlaneMemoryInfo-sType-sType)~^~implicit
-VALIDATION_ERROR_3fa3de01~^~N~^~None~^~VkBindImagePlaneMemoryInfo~^~VUID-VkBindImagePlaneMemoryInfo-planeAspect-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'planeAspect must be a valid VkImageAspectFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImagePlaneMemoryInfo-planeAspect-parameter)~^~implicit
+VALIDATION_ERROR_3fa3de01~^~Y~^~None~^~VkBindImagePlaneMemoryInfo~^~VUID-VkBindImagePlaneMemoryInfo-planeAspect-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'planeAspect must be a valid VkImageAspectFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImagePlaneMemoryInfo-planeAspect-parameter)~^~implicit
 VALIDATION_ERROR_3fc00c70~^~N~^~None~^~VkImagePlaneMemoryRequirementsInfo~^~VUID-VkImagePlaneMemoryRequirementsInfo-planeAspect-01592~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'planeAspect must be an aspect that exists in the format; that is, for a two-plane image planeAspect must be VK_IMAGE_ASPECT_PLANE_0_BIT or VK_IMAGE_ASPECT_PLANE_1_BIT, and for a three-plane image planeAspect must be VK_IMAGE_ASPECT_PLANE_0_BIT, VK_IMAGE_ASPECT_PLANE_1_BIT or VK_IMAGE_ASPECT_PLANE_2_BIT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImagePlaneMemoryRequirementsInfo-planeAspect-01592)~^~
 VALIDATION_ERROR_3fc2b00b~^~N~^~None~^~VkImagePlaneMemoryRequirementsInfo~^~VUID-VkImagePlaneMemoryRequirementsInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImagePlaneMemoryRequirementsInfo-sType-sType)~^~implicit
-VALIDATION_ERROR_3fc3de01~^~N~^~None~^~VkImagePlaneMemoryRequirementsInfo~^~VUID-VkImagePlaneMemoryRequirementsInfo-planeAspect-parameter~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'planeAspect must be a valid VkImageAspectFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImagePlaneMemoryRequirementsInfo-planeAspect-parameter)~^~implicit
+VALIDATION_ERROR_3fc3de01~^~Y~^~None~^~VkImagePlaneMemoryRequirementsInfo~^~VUID-VkImagePlaneMemoryRequirementsInfo-planeAspect-parameter~^~(VK_VERSION_1_1,VK_KHR_get_memory_requirements2)+(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'planeAspect must be a valid VkImageAspectFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImagePlaneMemoryRequirementsInfo-planeAspect-parameter)~^~implicit
 VALIDATION_ERROR_3fe00ce0~^~N~^~None~^~vkCreateSamplerYcbcrConversion~^~VUID-vkCreateSamplerYcbcrConversion-None-01648~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'The sampler Y'CBCR conversion feature must be enabled' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCreateSamplerYcbcrConversion-None-01648)~^~
 VALIDATION_ERROR_3fe05601~^~Y~^~None~^~vkCreateSamplerYcbcrConversion~^~VUID-vkCreateSamplerYcbcrConversion-device-parameter~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCreateSamplerYcbcrConversion-device-parameter)~^~implicit
 VALIDATION_ERROR_3fe0ec01~^~N~^~None~^~vkCreateSamplerYcbcrConversion~^~VUID-vkCreateSamplerYcbcrConversion-pAllocator-parameter~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'If pAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCreateSamplerYcbcrConversion-pAllocator-parameter)~^~implicit
@@ -3730,7 +3730,7 @@
 VALIDATION_ERROR_3fe3e001~^~Y~^~None~^~vkCreateSamplerYcbcrConversion~^~VUID-vkCreateSamplerYcbcrConversion-pYcbcrConversion-parameter~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'pYcbcrConversion must be a valid pointer to a VkSamplerYcbcrConversion handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCreateSamplerYcbcrConversion-pYcbcrConversion-parameter)~^~implicit
 VALIDATION_ERROR_40000c8c~^~N~^~None~^~VkBindBufferMemoryDeviceGroupInfo~^~VUID-VkBindBufferMemoryDeviceGroupInfo-deviceIndexCount-01606~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'deviceIndexCount must either be zero or equal to the number of physical devices in the logical device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-deviceIndexCount-01606)~^~
 VALIDATION_ERROR_40000c8e~^~N~^~None~^~VkBindBufferMemoryDeviceGroupInfo~^~VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-01607~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'All elements of pDeviceIndices must be valid device indices' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-01607)~^~
-VALIDATION_ERROR_40013e01~^~N~^~None~^~VkBindBufferMemoryDeviceGroupInfo~^~VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If deviceIndexCount is not 0, pDeviceIndices must be a valid pointer to an array of deviceIndexCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-parameter)~^~implicit
+VALIDATION_ERROR_40013e01~^~Y~^~None~^~VkBindBufferMemoryDeviceGroupInfo~^~VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If deviceIndexCount is not 0, pDeviceIndices must be a valid pointer to an array of deviceIndexCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-pDeviceIndices-parameter)~^~implicit
 VALIDATION_ERROR_4002b00b~^~N~^~None~^~VkBindBufferMemoryDeviceGroupInfo~^~VUID-VkBindBufferMemoryDeviceGroupInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindBufferMemoryDeviceGroupInfo-sType-sType)~^~implicit
 VALIDATION_ERROR_40200cc2~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-deviceIndexCount-01633~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'At least one of deviceIndexCount and splitInstanceBindRegionCount must be zero.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-deviceIndexCount-01633)~^~
 VALIDATION_ERROR_40200cc4~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-deviceIndexCount-01634~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'deviceIndexCount must either be zero or equal to the number of physical devices in the logical device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-deviceIndexCount-01634)~^~
@@ -3741,9 +3741,9 @@
 VALIDATION_ERROR_40200cce~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-offset-01639~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'The offset.y member of any element of pSplitInstanceBindRegions must be a multiple of the sparse image block height (VkSparseImageFormatProperties::imageGranularity.height) of all non-metadata aspects of the image' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-offset-01639)~^~
 VALIDATION_ERROR_40200cd0~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-extent-01640~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'The extent.width member of any element of pSplitInstanceBindRegions must either be a multiple of the sparse image block width of all non-metadata aspects of the image, or else extent.width + offset.x must equal the width of the image subresource' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-extent-01640)~^~
 VALIDATION_ERROR_40200cd2~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-extent-01641~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'The extent.height member of any element of pSplitInstanceBindRegions must either be a multiple of the sparse image block height of all non-metadata aspects of the image, or else extent.height offset.y must equal the width of the image subresource' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-extent-01641)~^~
-VALIDATION_ERROR_40213e01~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-pDeviceIndices-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If deviceIndexCount is not 0, pDeviceIndices must be a valid pointer to an array of deviceIndexCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-pDeviceIndices-parameter)~^~implicit
+VALIDATION_ERROR_40213e01~^~Y~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-pDeviceIndices-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If deviceIndexCount is not 0, pDeviceIndices must be a valid pointer to an array of deviceIndexCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-pDeviceIndices-parameter)~^~implicit
 VALIDATION_ERROR_4022b00b~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-sType-sType)~^~implicit
-VALIDATION_ERROR_4023fe01~^~N~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-pSplitInstanceBindRegions-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If splitInstanceBindRegionCount is not 0, pSplitInstanceBindRegions must be a valid pointer to an array of splitInstanceBindRegionCount VkRect2D structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-pSplitInstanceBindRegions-parameter)~^~implicit
+VALIDATION_ERROR_4023fe01~^~Y~^~None~^~VkBindImageMemoryDeviceGroupInfo~^~VUID-VkBindImageMemoryDeviceGroupInfo-pSplitInstanceBindRegions-parameter~^~(VK_VERSION_1_1,VK_KHR_bind_memory2)+(VK_VERSION_1_1,VK_KHR_device_group)~^~The spec valid usage text states 'If splitInstanceBindRegionCount is not 0, pSplitInstanceBindRegions must be a valid pointer to an array of splitInstanceBindRegionCount VkRect2D structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkBindImageMemoryDeviceGroupInfo-pSplitInstanceBindRegions-parameter)~^~implicit
 VALIDATION_ERROR_40405601~^~Y~^~None~^~vkDestroySamplerYcbcrConversion~^~VUID-vkDestroySamplerYcbcrConversion-device-parameter~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDestroySamplerYcbcrConversion-device-parameter)~^~implicit
 VALIDATION_ERROR_4040ec01~^~N~^~None~^~vkDestroySamplerYcbcrConversion~^~VUID-vkDestroySamplerYcbcrConversion-pAllocator-parameter~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'If pAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDestroySamplerYcbcrConversion-pAllocator-parameter)~^~implicit
 VALIDATION_ERROR_4043e201~^~Y~^~None~^~vkDestroySamplerYcbcrConversion~^~VUID-vkDestroySamplerYcbcrConversion-ycbcrConversion-parameter~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'If ycbcrConversion is not VK_NULL_HANDLE, ycbcrConversion must be a valid VkSamplerYcbcrConversion handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkDestroySamplerYcbcrConversion-ycbcrConversion-parameter)~^~implicit
@@ -3753,7 +3753,7 @@
 VALIDATION_ERROR_40a2b00b~^~N~^~None~^~VkSamplerYcbcrConversionInfo~^~VUID-VkSamplerYcbcrConversionInfo-sType-sType~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionInfo-sType-sType)~^~implicit
 VALIDATION_ERROR_40a3e601~^~N~^~None~^~VkSamplerYcbcrConversionInfo~^~VUID-VkSamplerYcbcrConversionInfo-conversion-parameter~^~(VK_VERSION_1_1,VK_KHR_sampler_ycbcr_conversion)~^~The spec valid usage text states 'conversion must be a valid VkSamplerYcbcrConversion handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkSamplerYcbcrConversionInfo-conversion-parameter)~^~implicit
 VALIDATION_ERROR_40c2b00b~^~N~^~None~^~VkDeviceQueueGlobalPriorityCreateInfoEXT~^~VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-sType-sType~^~(VK_EXT_global_priority)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-sType-sType)~^~implicit
-VALIDATION_ERROR_40c3ea01~^~N~^~None~^~VkDeviceQueueGlobalPriorityCreateInfoEXT~^~VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-globalPriority-parameter~^~(VK_EXT_global_priority)~^~The spec valid usage text states 'globalPriority must be a valid VkQueueGlobalPriorityEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-globalPriority-parameter)~^~implicit
+VALIDATION_ERROR_40c3ea01~^~Y~^~None~^~VkDeviceQueueGlobalPriorityCreateInfoEXT~^~VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-globalPriority-parameter~^~(VK_EXT_global_priority)~^~The spec valid usage text states 'globalPriority must be a valid VkQueueGlobalPriorityEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueGlobalPriorityCreateInfoEXT-globalPriority-parameter)~^~implicit
 VALIDATION_ERROR_40e05601~^~Y~^~None~^~vkGetShaderInfoAMD~^~VUID-vkGetShaderInfoAMD-device-parameter~^~(VK_AMD_shader_info)~^~The spec valid usage text states 'device must be a valid VkDevice handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetShaderInfoAMD-device-parameter)~^~implicit
 VALIDATION_ERROR_40e27c01~^~Y~^~None~^~vkGetShaderInfoAMD~^~VUID-vkGetShaderInfoAMD-pipeline-parameter~^~(VK_AMD_shader_info)~^~The spec valid usage text states 'pipeline must be a valid VkPipeline handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetShaderInfoAMD-pipeline-parameter)~^~implicit
 VALIDATION_ERROR_40e27c07~^~Y~^~None~^~vkGetShaderInfoAMD~^~VUID-vkGetShaderInfoAMD-pipeline-parent~^~(VK_AMD_shader_info)~^~The spec valid usage text states 'pipeline must have been created, allocated, or retrieved from device' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetShaderInfoAMD-pipeline-parent)~^~implicit
@@ -3766,9 +3766,9 @@
 VALIDATION_ERROR_41200daa~^~N~^~None~^~VkImportMemoryHostPointerInfoEXT~^~VUID-VkImportMemoryHostPointerInfoEXT-pHostPointer-01749~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'pHostPointer must be a pointer aligned to an integer multiple of VkPhysicalDeviceExternalMemoryHostPropertiesEXT::minImportedHostPointerAlignment' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-pHostPointer-01749)~^~
 VALIDATION_ERROR_41200dac~^~N~^~None~^~VkImportMemoryHostPointerInfoEXT~^~VUID-VkImportMemoryHostPointerInfoEXT-handleType-01750~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'If handleType is VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT, pHostPointer must be a pointer to allocationSize number of bytes of host memory, where allocationSize is the member of the VkMemoryAllocateInfo structure this structure is chained to' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-handleType-01750)~^~
 VALIDATION_ERROR_41200dae~^~N~^~None~^~VkImportMemoryHostPointerInfoEXT~^~VUID-VkImportMemoryHostPointerInfoEXT-handleType-01751~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'If handleType is VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT, pHostPointer must be a pointer to allocationSize number of bytes of host mapped foreign memory, where allocationSize is the member of the VkMemoryAllocateInfo structure this structure is chained to' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-handleType-01751)~^~
-VALIDATION_ERROR_41209c01~^~N~^~None~^~VkImportMemoryHostPointerInfoEXT~^~VUID-VkImportMemoryHostPointerInfoEXT-handleType-parameter~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-handleType-parameter)~^~implicit
+VALIDATION_ERROR_41209c01~^~Y~^~None~^~VkImportMemoryHostPointerInfoEXT~^~VUID-VkImportMemoryHostPointerInfoEXT-handleType-parameter~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'handleType must be a valid VkExternalMemoryHandleTypeFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-handleType-parameter)~^~implicit
 VALIDATION_ERROR_4122b00b~^~N~^~None~^~VkImportMemoryHostPointerInfoEXT~^~VUID-VkImportMemoryHostPointerInfoEXT-sType-sType~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportMemoryHostPointerInfoEXT-sType-sType)~^~implicit
-VALIDATION_ERROR_4141c40d~^~N~^~None~^~VkMemoryHostPointerPropertiesEXT~^~VUID-VkMemoryHostPointerPropertiesEXT-pNext-pNext~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryHostPointerPropertiesEXT-pNext-pNext)~^~implicit
+VALIDATION_ERROR_4141c40d~^~Y~^~None~^~VkMemoryHostPointerPropertiesEXT~^~VUID-VkMemoryHostPointerPropertiesEXT-pNext-pNext~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'pNext must be NULL' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryHostPointerPropertiesEXT-pNext-pNext)~^~implicit
 VALIDATION_ERROR_4142b00b~^~Y~^~None~^~VkMemoryHostPointerPropertiesEXT~^~VUID-VkMemoryHostPointerPropertiesEXT-sType-sType~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryHostPointerPropertiesEXT-sType-sType)~^~implicit
 VALIDATION_ERROR_4162b00b~^~N~^~None~^~VkPhysicalDeviceExternalMemoryHostPropertiesEXT~^~VUID-VkPhysicalDeviceExternalMemoryHostPropertiesEXT-sType-sType~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceExternalMemoryHostPropertiesEXT-sType-sType)~^~implicit
 VALIDATION_ERROR_41800db0~^~N~^~None~^~vkGetMemoryHostPointerPropertiesEXT~^~VUID-vkGetMemoryHostPointerPropertiesEXT-handleType-01752~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'handleType must be VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT or VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryHostPointerPropertiesEXT-handleType-01752)~^~
@@ -3780,9 +3780,9 @@
 VALIDATION_ERROR_4183f401~^~N~^~None~^~vkGetMemoryHostPointerPropertiesEXT~^~VUID-vkGetMemoryHostPointerPropertiesEXT-pMemoryHostPointerProperties-parameter~^~(VK_EXT_external_memory_host)~^~The spec valid usage text states 'pMemoryHostPointerProperties must be a valid pointer to a VkMemoryHostPointerPropertiesEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkGetMemoryHostPointerPropertiesEXT-pMemoryHostPointerProperties-parameter)~^~implicit
 VALIDATION_ERROR_41a2b00b~^~N~^~None~^~VkPhysicalDeviceConservativeRasterizationPropertiesEXT~^~VUID-VkPhysicalDeviceConservativeRasterizationPropertiesEXT-sType-sType~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceConservativeRasterizationPropertiesEXT-sType-sType)~^~implicit
 VALIDATION_ERROR_41c00dd2~^~N~^~None~^~VkPipelineRasterizationConservativeStateCreateInfoEXT~^~VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-extraPrimitiveOverestimationSize-01769~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'extraPrimitiveOverestimationSize must be in the range of 0.0 to VkPhysicalDeviceConservativeRasterizationPropertiesEXT::maxExtraPrimitiveOverestimationSize inclusive' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-extraPrimitiveOverestimationSize-01769)~^~
-VALIDATION_ERROR_41c09005~^~N~^~None~^~VkPipelineRasterizationConservativeStateCreateInfoEXT~^~VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-flags-zerobitmask~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-flags-zerobitmask)~^~implicit
+VALIDATION_ERROR_41c09005~^~Y~^~None~^~VkPipelineRasterizationConservativeStateCreateInfoEXT~^~VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-flags-zerobitmask~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'flags must be 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-flags-zerobitmask)~^~implicit
 VALIDATION_ERROR_41c2b00b~^~N~^~None~^~VkPipelineRasterizationConservativeStateCreateInfoEXT~^~VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-sType-sType~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-sType-sType)~^~implicit
-VALIDATION_ERROR_41c3f801~^~N~^~None~^~VkPipelineRasterizationConservativeStateCreateInfoEXT~^~VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-conservativeRasterizationMode-parameter~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'conservativeRasterizationMode must be a valid VkConservativeRasterizationModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-conservativeRasterizationMode-parameter)~^~implicit
+VALIDATION_ERROR_41c3f801~^~Y~^~None~^~VkPipelineRasterizationConservativeStateCreateInfoEXT~^~VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-conservativeRasterizationMode-parameter~^~(VK_EXT_conservative_rasterization)~^~The spec valid usage text states 'conservativeRasterizationMode must be a valid VkConservativeRasterizationModeEXT value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineRasterizationConservativeStateCreateInfoEXT-conservativeRasterizationMode-parameter)~^~implicit
 VALIDATION_ERROR_41e00009~^~Y~^~None~^~vkCmdWriteBufferMarkerAMD~^~VUID-vkCmdWriteBufferMarkerAMD-commonparent~^~(VK_AMD_buffer_marker)~^~The spec valid usage text states 'Both of commandBuffer, and dstBuffer must have been created, allocated, or retrieved from the same VkDevice' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-commonparent)~^~implicit
 VALIDATION_ERROR_41e00e0c~^~N~^~None~^~vkCmdWriteBufferMarkerAMD~^~VUID-vkCmdWriteBufferMarkerAMD-dstOffset-01798~^~(VK_AMD_buffer_marker)~^~The spec valid usage text states 'dstOffset must be less than or equal to the size of dstBuffer minus 4.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-dstOffset-01798)~^~
 VALIDATION_ERROR_41e00e0e~^~N~^~None~^~vkCmdWriteBufferMarkerAMD~^~VUID-vkCmdWriteBufferMarkerAMD-dstBuffer-01799~^~(VK_AMD_buffer_marker)~^~The spec valid usage text states 'dstBuffer must have been created with VK_BUFFER_USAGE_TRANSFER_DST_BIT usage flag' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-dstBuffer-01799)~^~
@@ -3793,7 +3793,7 @@
 VALIDATION_ERROR_41e02415~^~N~^~None~^~vkCmdWriteBufferMarkerAMD~^~VUID-vkCmdWriteBufferMarkerAMD-commandBuffer-cmdpool~^~(VK_AMD_buffer_marker)~^~The spec valid usage text states 'The VkCommandPool that commandBuffer was allocated from must support transfer, graphics, or compute operations' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-commandBuffer-cmdpool)~^~implicit
 VALIDATION_ERROR_41e06c01~^~Y~^~None~^~vkCmdWriteBufferMarkerAMD~^~VUID-vkCmdWriteBufferMarkerAMD-dstBuffer-parameter~^~(VK_AMD_buffer_marker)~^~The spec valid usage text states 'dstBuffer must be a valid VkBuffer handle' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-dstBuffer-parameter)~^~implicit
 VALIDATION_ERROR_41e28401~^~Y~^~None~^~vkCmdWriteBufferMarkerAMD~^~VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-parameter~^~(VK_AMD_buffer_marker)~^~The spec valid usage text states 'pipelineStage must be a valid VkPipelineStageFlagBits value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkCmdWriteBufferMarkerAMD-pipelineStage-parameter)~^~implicit
-VALIDATION_ERROR_4201c40d~^~N~^~None~^~VkDescriptorSetLayoutSupport~^~VUID-VkDescriptorSetLayoutSupport-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_maintenance3)~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDescriptorSetVariableDescriptorCountLayoutSupportEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutSupport-pNext-pNext)~^~implicit
+VALIDATION_ERROR_4201c40d~^~Y~^~None~^~VkDescriptorSetLayoutSupport~^~VUID-VkDescriptorSetLayoutSupport-pNext-pNext~^~(VK_VERSION_1_1,VK_KHR_maintenance3)~^~The spec valid usage text states 'pNext must be NULL or a pointer to a valid instance of VkDescriptorSetVariableDescriptorCountLayoutSupportEXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutSupport-pNext-pNext)~^~implicit
 VALIDATION_ERROR_4202b00b~^~Y~^~None~^~VkDescriptorSetLayoutSupport~^~VUID-VkDescriptorSetLayoutSupport-sType-sType~^~(VK_VERSION_1_1,VK_KHR_maintenance3)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetLayoutSupport-sType-sType)~^~implicit
 VALIDATION_ERROR_42200e64~^~N~^~None~^~VkDeviceQueueInfo2~^~VUID-VkDeviceQueueInfo2-queueFamilyIndex-01842~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'queueFamilyIndex must be one of the queue family indices specified when device was created, via the VkDeviceQueueCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueInfo2-queueFamilyIndex-01842)~^~
 VALIDATION_ERROR_42200e66~^~N~^~None~^~VkDeviceQueueInfo2~^~VUID-VkDeviceQueueInfo2-queueIndex-01843~^~(VK_VERSION_1_1)~^~The spec valid usage text states 'queueIndex must be less than the number of queues created for the specified queue family index and VkDeviceQueueCreateFlags member flags equal to this flags value when device was created, via the queueCount member of the VkDeviceQueueCreateInfo structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDeviceQueueInfo2-queueIndex-01843)~^~
@@ -3860,13 +3860,13 @@
 VALIDATION_ERROR_44242801~^~N~^~None~^~vkSubmitDebugUtilsMessageEXT~^~VUID-vkSubmitDebugUtilsMessageEXT-pCallbackData-parameter~^~(VK_EXT_debug_utils)~^~The spec valid usage text states 'pCallbackData must be a valid pointer to a valid VkDebugUtilsMessengerCallbackDataEXT structure' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-vkSubmitDebugUtilsMessageEXT-pCallbackData-parameter)~^~implicit
 VALIDATION_ERROR_4442b00b~^~N~^~None~^~VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT~^~VUID-VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT-sType-sType~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT-sType-sType)~^~implicit
 VALIDATION_ERROR_4462b00b~^~N~^~None~^~VkPipelineVertexInputDivisorStateCreateInfoEXT~^~VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-sType-sType~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-sType-sType)~^~implicit
-VALIDATION_ERROR_4464141b~^~N~^~None~^~VkPipelineVertexInputDivisorStateCreateInfoEXT~^~VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-vertexBindingDivisorCount-arraylength~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'vertexBindingDivisorCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-vertexBindingDivisorCount-arraylength)~^~implicit
-VALIDATION_ERROR_44641601~^~N~^~None~^~VkPipelineVertexInputDivisorStateCreateInfoEXT~^~VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-pVertexBindingDivisors-parameter~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'pVertexBindingDivisors must be a valid pointer to an array of vertexBindingDivisorCount VkVertexInputBindingDivisorDescriptionEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-pVertexBindingDivisors-parameter)~^~implicit
+VALIDATION_ERROR_4464141b~^~Y~^~None~^~VkPipelineVertexInputDivisorStateCreateInfoEXT~^~VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-vertexBindingDivisorCount-arraylength~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'vertexBindingDivisorCount must be greater than 0' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-vertexBindingDivisorCount-arraylength)~^~implicit
+VALIDATION_ERROR_44641601~^~Y~^~None~^~VkPipelineVertexInputDivisorStateCreateInfoEXT~^~VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-pVertexBindingDivisors-parameter~^~(VK_EXT_vertex_attribute_divisor)~^~The spec valid usage text states 'pVertexBindingDivisors must be a valid pointer to an array of vertexBindingDivisorCount VkVertexInputBindingDivisorDescriptionEXT structures' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPipelineVertexInputDivisorStateCreateInfoEXT-pVertexBindingDivisors-parameter)~^~implicit
 VALIDATION_ERROR_44800ecc~^~N~^~None~^~VkExternalFormatANDROID~^~VUID-VkExternalFormatANDROID-externalFormat-01894~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'externalFormat must be 0 or a value returned in the externalFormat member of VkAndroidHardwareBufferFormatPropertiesANDROID by an earlier call to vkGetAndroidHardwareBufferPropertiesANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalFormatANDROID-externalFormat-01894)~^~
 VALIDATION_ERROR_4482b00b~^~N~^~None~^~VkExternalFormatANDROID~^~VUID-VkExternalFormatANDROID-sType-sType~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkExternalFormatANDROID-sType-sType)~^~implicit
 VALIDATION_ERROR_44a00eb0~^~N~^~None~^~VkImportAndroidHardwareBufferInfoANDROID~^~VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01880~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'If buffer is not NULL, Android hardware buffers must be supported for import, as reported by VkExternalImageFormatProperties or VkExternalBufferProperties.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01880)~^~
 VALIDATION_ERROR_44a00eb2~^~N~^~None~^~VkImportAndroidHardwareBufferInfoANDROID~^~VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01881~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'If buffer is not NULL, it must be a valid Android hardware buffer object with format and usage compatible with Vulkan as described by VkExternalMemoryHandleTypeFlagBits.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-01881)~^~
-VALIDATION_ERROR_44a01a01~^~N~^~None~^~VkImportAndroidHardwareBufferInfoANDROID~^~VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-parameter~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'buffer must be a valid pointer to a AHardwareBuffer value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-parameter)~^~implicit
+VALIDATION_ERROR_44a01a01~^~Y~^~None~^~VkImportAndroidHardwareBufferInfoANDROID~^~VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-parameter~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'buffer must be a valid pointer to a AHardwareBuffer value' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-buffer-parameter)~^~implicit
 VALIDATION_ERROR_44a2b00b~^~N~^~None~^~VkImportAndroidHardwareBufferInfoANDROID~^~VUID-VkImportAndroidHardwareBufferInfoANDROID-sType-sType~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkImportAndroidHardwareBufferInfoANDROID-sType-sType)~^~implicit
 VALIDATION_ERROR_44c00eb4~^~N~^~None~^~VkMemoryGetAndroidHardwareBufferInfoANDROID~^~VUID-VkMemoryGetAndroidHardwareBufferInfoANDROID-handleTypes-01882~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID must have been included in VkExportMemoryAllocateInfoKHR::handleTypes when memory was created.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryGetAndroidHardwareBufferInfoANDROID-handleTypes-01882)~^~
 VALIDATION_ERROR_44c00eb6~^~N~^~None~^~VkMemoryGetAndroidHardwareBufferInfoANDROID~^~VUID-VkMemoryGetAndroidHardwareBufferInfoANDROID-pNext-01883~^~(VK_ANDROID_external_memory_android_hardware_buffer)~^~The spec valid usage text states 'If the pNext chain of the VkMemoryAllocateInfo used to allocate memory included a VkMemoryDedicatedAllocateInfo with non-NULL image member, then that image must already be bound to memory.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkMemoryGetAndroidHardwareBufferInfoANDROID-pNext-01883)~^~
@@ -3928,7 +3928,7 @@
 VALIDATION_ERROR_46c017ca~^~Y~^~None~^~VkDescriptorSetVariableDescriptorCountAllocateInfoEXT~^~VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-descriptorSetCount-03045~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If descriptorSetCount is not zero, descriptorSetCount must equal VkDescriptorSetAllocateInfo::descriptorSetCount' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-descriptorSetCount-03045)~^~
 VALIDATION_ERROR_46c017cc~^~Y~^~DescriptorIndexingSetLayout~^~VkDescriptorSetVariableDescriptorCountAllocateInfoEXT~^~VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pSetLayouts-03046~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If VkDescriptorSetAllocateInfo::pSetLayouts[i] has a variable descriptor count binding, then pDescriptorCounts[i] must be less than or equal to the descriptor count specified for that binding when the descriptor set layout was created.' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pSetLayouts-03046)~^~
 VALIDATION_ERROR_46c2b00b~^~N~^~None~^~VkDescriptorSetVariableDescriptorCountAllocateInfoEXT~^~VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-sType-sType~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-sType-sType)~^~implicit
-VALIDATION_ERROR_46c42c01~^~N~^~None~^~VkDescriptorSetVariableDescriptorCountAllocateInfoEXT~^~VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pDescriptorCounts-parameter~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If descriptorSetCount is not 0, pDescriptorCounts must be a valid pointer to an array of descriptorSetCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pDescriptorCounts-parameter)~^~implicit
+VALIDATION_ERROR_46c42c01~^~Y~^~None~^~VkDescriptorSetVariableDescriptorCountAllocateInfoEXT~^~VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pDescriptorCounts-parameter~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'If descriptorSetCount is not 0, pDescriptorCounts must be a valid pointer to an array of descriptorSetCount uint32_t values' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountAllocateInfoEXT-pDescriptorCounts-parameter)~^~implicit
 VALIDATION_ERROR_46e2b00b~^~N~^~None~^~VkDescriptorSetVariableDescriptorCountLayoutSupportEXT~^~VUID-VkDescriptorSetVariableDescriptorCountLayoutSupportEXT-sType-sType~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkDescriptorSetVariableDescriptorCountLayoutSupportEXT-sType-sType)~^~implicit
 VALIDATION_ERROR_4702b00b~^~N~^~None~^~VkPhysicalDeviceDescriptorIndexingFeaturesEXT~^~VUID-VkPhysicalDeviceDescriptorIndexingFeaturesEXT-sType-sType~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceDescriptorIndexingFeaturesEXT-sType-sType)~^~implicit
 VALIDATION_ERROR_4722b00b~^~N~^~None~^~VkPhysicalDeviceDescriptorIndexingPropertiesEXT~^~VUID-VkPhysicalDeviceDescriptorIndexingPropertiesEXT-sType-sType~^~(VK_EXT_descriptor_indexing)~^~The spec valid usage text states 'sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT' (https://www.khronos.org/registry/vulkan/specs/1.0-extensions/html/vkspec.html#VUID-VkPhysicalDeviceDescriptorIndexingPropertiesEXT-sType-sType)~^~implicit
diff --git a/scripts/parameter_validation_generator.py b/scripts/parameter_validation_generator.py
index 44c6576..291afb0 100644
--- a/scripts/parameter_validation_generator.py
+++ b/scripts/parameter_validation_generator.py
@@ -173,12 +173,14 @@
         self.required_extensions = dict()                 # Dictionary of required extensions for each item in the current extension
         self.extension_type = ''                          # Type of active feature (extension), device or instance
         self.extension_names = dict()                     # Dictionary of extension names to extension name defines
+        self.structextends_list = []                      # List of extensions which extend another struct
+        self.struct_feature_protect = dict()            # Dictionary of structnames and FeatureExtraProtect strings
         self.valid_vuids = set()                          # Set of all valid VUIDs
         # Named tuples to store struct and command data
         self.StructType = namedtuple('StructType', ['name', 'value'])
         self.CommandParam = namedtuple('CommandParam', ['type', 'name', 'ispointer', 'isstaticarray', 'isbool', 'israngedenum',
-                                                        'isconst', 'isoptional', 'iscount', 'noautovalidity', 'len', 'extstructs',
-                                                        'condition', 'cdecl'])
+                                                        'isconst', 'isoptional', 'iscount', 'noautovalidity',
+                                                        'len', 'extstructs', 'condition', 'cdecl'])
         self.CommandData = namedtuple('CommandData', ['name', 'params', 'cdecl', 'extension_type', 'result'])
         self.StructMemberData = namedtuple('StructMemberData', ['name', 'members'])
 
@@ -306,6 +308,44 @@
         self.func_pointers += '};\n'
         write(self.func_pointers, file=self.outFile)
         self.newline()
+
+        pnext_handler  = 'bool ValidatePnextStructContents(debug_report_data *report_data, const char *api_name, const ParameterName &parameter_name, const GenericHeader* header) {\n'
+        pnext_handler += '    bool skip = false;\n'
+        pnext_handler += '    switch(header->sType) {\n'
+
+        # Do some processing here to extract data from validatedstructs...
+        for item in self.structextends_list:
+            postProcSpec = {}
+            postProcSpec['ppp'] = '' if not item else '{postProcPrefix}'
+            postProcSpec['pps'] = '' if not item else '{postProcSuffix}'
+            postProcSpec['ppi'] = '' if not item else '{postProcInsert}'
+
+            pnext_case = '\n'
+            protect = ''
+            # Guard struct cases with feature ifdefs, if necessary
+            if item in self.struct_feature_protect.keys():
+                protect = self.struct_feature_protect[item]
+                pnext_case += '#ifdef %s\n' % protect
+            pnext_case += '        // Validation code for %s structure members\n' % item
+            pnext_case += '        case %s: {\n' % self.getStructType(item)
+            pnext_case += '            %s *structure = (%s *) header;\n' % (item, item)
+            expr = self.expandStructCode(self.validatedStructs[item], item, 'structure->', '', '            ', [], postProcSpec)
+            struct_validation_source = self.ScrubStructCode(expr)
+            pnext_case += '%s' % struct_validation_source
+            pnext_case += '        } break;\n'
+            if protect is not '':
+                pnext_case += '#endif // %s\n' % protect
+            # Skip functions containing no validation
+            if struct_validation_source != '':
+                pnext_handler += pnext_case;
+        pnext_handler += '        default:\n'
+        pnext_handler += '            skip = false;\n'
+        pnext_handler += '    }\n'
+        pnext_handler += '    return skip;\n'
+        pnext_handler += '}\n'
+        write(pnext_handler, file=self.outFile)
+        self.newline()
+
         ext_template  = 'template <typename T>\n'
         ext_template += 'bool OutputExtensionError(const T *layer_data, const std::string &api_name, const std::string &extension_name) {\n'
         ext_template += '    return log_msg(layer_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 0,\n'
@@ -436,6 +476,8 @@
         OutputGenerator.genStruct(self, typeinfo, typeName, alias)
         conditions = self.structMemberValidationConditions[typeName] if typeName in self.structMemberValidationConditions else None
         members = typeinfo.elem.findall('.//member')
+        if self.featureExtraProtect is not None:
+            self.struct_feature_protect[typeName] = self.featureExtraProtect
         #
         # Iterate over members once to get length parameters for arrays
         lens = set()
@@ -480,6 +522,7 @@
             noautovalidity = False
             if (member.attrib.get('noautovalidity') is not None) or ((typeName in self.structMemberBlacklist) and (name in self.structMemberBlacklist[typeName])):
                 noautovalidity = True
+            structextends = False
             membersInfo.append(self.CommandParam(type=type, name=name,
                                                 ispointer=self.paramIsPointer(member),
                                                 isstaticarray=isstaticarray,
@@ -493,6 +536,13 @@
                                                 extstructs=self.registry.validextensionstructs[typeName] if name == 'pNext' else None,
                                                 condition=conditions[name] if conditions and name in conditions else None,
                                                 cdecl=cdecl))
+        # If this struct extends another, keep its name in list for further processing
+        if (typeinfo.elem.attrib.get('structextends') is not None):
+            self.structextends_list.append(typeName)
+        # Returnedonly structs should have most of their members ignored -- on entry, we only care about validating the sType and
+        # pNext members. Everything else will be overwritten by the callee.
+        if typeinfo.elem.attrib.get('returnedonly') is not None:
+            membersInfo = [m for m in membersInfo if m.name in ('sType', 'pNext')]
         self.structMembers.append(self.StructMemberData(name=typeName, members=membersInfo))
     #
     # Capture group (e.g. C "enum" type) info to be used for param check code generation.
@@ -656,6 +706,7 @@
         value = re.sub('([a-z0-9])([A-Z])', r'\1_\2', typename)
         value = value.replace('D3_D12', 'D3D12')
         value = value.replace('Device_IDProp', 'Device_ID_Prop')
+        value = value.replace('LODGather', 'LOD_Gather')
         # Change to uppercase
         value = value.upper()
         # Add STRUCTURE_TYPE_
@@ -730,8 +781,8 @@
             if '->' in name:
                 # The count is obtained by dereferencing a member of a struct parameter
                 lenParam = self.CommandParam(name=name, iscount=True, ispointer=False, isbool=False, israngedenum=False, isconst=False,
-                                             isstaticarray=None, isoptional=False, type=None, noautovalidity=False, len=None, extstructs=None,
-                                             condition=None, cdecl=None)
+                                             isstaticarray=None, isoptional=False, type=None, noautovalidity=False,
+                                             len=None, extstructs=None, condition=None, cdecl=None)
             elif 'latexmath' in name:
                 lenName, decoratedName = self.parseLateXMath(name)
                 lenParam = self.getParamByName(params, lenName)
@@ -949,6 +1000,28 @@
             return line.format(**kwargs)
         return line
     #
+    # Process struct member validation code, stripping metadata
+    def ScrubStructCode(self, code):
+        scrubbed_lines = ''
+        for line in code:
+            if 'validate_struct_pnext' in line:
+                continue
+            if 'allowed_structs' in line:
+                continue
+            if 'xml-driven validation' in line:
+                continue
+            line = line.replace('{postProcPrefix}', '')
+            line = line.replace('{postProcSuffix}', '')
+            line = line.replace('{postProcInsert}', '')
+            line = line.replace('{funcName}', '')
+            line = line.replace('{valuePrefix}', '')
+            line = line.replace('{displayNamePrefix}', '')
+            line = line.replace('{IndexVector}', '')
+            line = line.replace('local_data->', '')
+          ###  line += '\n'
+            scrubbed_lines += line
+        return scrubbed_lines
+    #
     # Process struct validation code for inclusion in function or parent struct validation code
     def expandStructCode(self, lines, funcName, memberNamePrefix, memberDisplayNamePrefix, indent, output, postProcSpec):
         for line in lines:
@@ -1070,13 +1143,14 @@
                     else:
                         usedLines += self.makePointerCheck(valuePrefix, value, lenParam, req, cvReq, cpReq, funcName, lenDisplayName, valueDisplayName, postProcSpec, structTypeName)
                     # If this is a pointer to a struct (input), see if it contains members that need to be checked
-                    if value.type in self.validatedStructs and value.isconst:
+####                if value.type in self.validatedStructs and value.isconst:
+                    if value.type in self.validatedStructs:
                         usedLines.append(self.expandStructPointerCode(valuePrefix, value, lenParam, funcName, valueDisplayName, postProcSpec))
             # Non-pointer types
             else:
                 # The parameter will not be processes when tagged as 'noautovalidity'
                 # For the struct case, the struct type will not be validated, but any
-                # members not tagged as 'noatuvalidity' will be validated
+                # members not tagged as 'noautvalidity' will be validated
                 if value.noautovalidity:
                     # Log a diagnostic message when validation cannot be automatically generated and must be implemented manually
                     self.logMsg('diag', 'ParameterValidation: No validation for {} {}'.format(structTypeName if structTypeName else funcName, value.name))