Update CTS to VulkanSC header version 1.0.8
authorPawel Ksiezopolski <pawel.ksiezopolski@mobica.com>
Tue, 11 Jan 2022 17:45:36 +0000 (18:45 +0100)
committerMatthew Netsch <quic_mnetsch@quicinc.com>
Thu, 20 Jan 2022 20:38:06 +0000 (20:38 +0000)
Updated JSON generation and parsing files from
gitlab.khronos.org:vulkansc/vulkansc.git sc_main@14cd0818123436f84713fb0f7ee297ced5876607
CTS variants of scripts can be found under <gen>/out/json/cts

To activate the CTS TLS WAR - please define USE_THREAD_LOCAL_WAR

Removed tests:

dEQP-VKSC.api.command_buffers.pool_reset_release_res
dEQP-VKSC.api.command_buffers.pool_reset_reuse
dEQP-VKSC.pipeline.derivative.compute.derivative_by_handle
dEQP-VKSC.pipeline.derivative.compute.derivative_by_index

Components: VulkanSC Framework

VK-GL-CTS issue: 3436

Change-Id: I78654c7977fdfbe79fa24909403279e25f3c1620

28 files changed:
android/cts/master/vksc-master/api.txt
android/cts/master/vksc-master/pipeline.txt
external/vulkancts/framework/vulkan/CMakeLists.txt
external/vulkancts/framework/vulkan/generated/vulkansc/tlsWrapper.hpp [new file with mode: 0644]
external/vulkancts/framework/vulkan/generated/vulkansc/vkBasicTypes.inl
external/vulkancts/framework/vulkan/generated/vulkansc/vkExtensionFunctions.inl
external/vulkancts/framework/vulkan/generated/vulkansc/vkGetStructureTypeImpl.inl
external/vulkancts/framework/vulkan/generated/vulkansc/vkKnownDriverIds.inl
external/vulkancts/framework/vulkan/generated/vulkansc/vkStrUtil.inl
external/vulkancts/framework/vulkan/generated/vulkansc/vkStrUtilImpl.inl
external/vulkancts/framework/vulkan/generated/vulkansc/vkStructTypes.inl
external/vulkancts/framework/vulkan/generated/vulkansc/vkVulkan_c.inl
external/vulkancts/framework/vulkan/generated/vulkansc/vulkan_json_data.hpp
external/vulkancts/framework/vulkan/generated/vulkansc/vulkan_json_parser.hpp
external/vulkancts/framework/vulkan/vkDefs.hpp
external/vulkancts/modules/vulkan/api/vktApiCommandBuffersTests.cpp
external/vulkancts/modules/vulkan/image/vktImageCompressionTranscodingSupport.cpp
external/vulkancts/modules/vulkan/image/vktImageTranscodingSupportTests.cpp
external/vulkancts/modules/vulkan/pipeline/CMakeLists.txt
external/vulkancts/modules/vulkan/pipeline/vktPipelineMultisampleImageTests.cpp
external/vulkancts/modules/vulkan/pipeline/vktPipelineTests.cpp
external/vulkancts/modules/vulkan/subgroups/vktSubgroupsTestsUtils.cpp
external/vulkancts/modules/vulkan/vktTestCase.cpp
external/vulkancts/modules/vulkan/vktTestPackage.cpp
external/vulkancts/mustpass/master/vksc-default/api.txt
external/vulkancts/mustpass/master/vksc-default/pipeline.txt
external/vulkancts/scripts/src/vulkan_sc_core.h
external/vulkancts/vkscserver/vksJson.cpp

index 15c0f27..baf21d8 100644 (file)
@@ -4655,9 +4655,7 @@ dEQP-VKSC.api.buffer_view.access.dedicated_alloc.buffer_view_memory_test_partial
 dEQP-VKSC.api.command_buffers.pool_create_null_params
 dEQP-VKSC.api.command_buffers.pool_create_transient_bit
 dEQP-VKSC.api.command_buffers.pool_create_reset_bit
-dEQP-VKSC.api.command_buffers.pool_reset_release_res
 dEQP-VKSC.api.command_buffers.pool_reset_no_flags_res
-dEQP-VKSC.api.command_buffers.pool_reset_reuse
 dEQP-VKSC.api.command_buffers.allocate_single_primary
 dEQP-VKSC.api.command_buffers.allocate_many_primary
 dEQP-VKSC.api.command_buffers.allocate_single_secondary
index 837923a..392cde3 100644 (file)
@@ -150348,8 +150348,6 @@ dEQP-VKSC.pipeline.framebuffer_attachment.resolve_input_same_attachment
 dEQP-VKSC.pipeline.shader_stencil_export.s8_uint.op_replace
 dEQP-VKSC.pipeline.shader_stencil_export.d24_unorm_s8_uint.op_replace
 dEQP-VKSC.pipeline.shader_stencil_export.d32_sfloat_s8_uint.op_replace
-dEQP-VKSC.pipeline.derivative.compute.derivative_by_handle
-dEQP-VKSC.pipeline.derivative.compute.derivative_by_index
 dEQP-VKSC.pipeline.depth_range_unrestricted.clear_value.d32_sfloat_compare_op_less_or_equal_clear_value_2_wc_1_viewport_min_0_max_1
 dEQP-VKSC.pipeline.depth_range_unrestricted.clear_value.d32_sfloat_compare_op_less_or_equal_clear_value_-3_wc_1_viewport_min_0_max_1
 dEQP-VKSC.pipeline.depth_range_unrestricted.clear_value.d32_sfloat_compare_op_less_or_equal_clear_value_6_wc_1_viewport_min_0_max_1
index 1fcbd4b..a5695ee 100644 (file)
@@ -92,6 +92,7 @@ set(VKSCUTILNOSHADER_INLS
        generated/vulkansc/vkDeviceProperties.inl
        generated/vulkansc/vulkan_json_data.hpp
        generated/vulkansc/vulkan_json_parser.hpp
+       generated/vulkansc/tlsWrapper.hpp
        )
 
 set(VKUTIL_SRCS
diff --git a/external/vulkancts/framework/vulkan/generated/vulkansc/tlsWrapper.hpp b/external/vulkancts/framework/vulkan/generated/vulkansc/tlsWrapper.hpp
new file mode 100644 (file)
index 0000000..ff197a6
--- /dev/null
@@ -0,0 +1,95 @@
+#ifndef _TLSWRAPPER_HPP
+#define _TLSWRAPPER_HPP
+
+/*
+ * Copyright (c) 2021 The Khronos Group Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ *
+ *//*!
+ * \file
+ * \brief Defines TLSContainer for CTS
+ */
+
+#include <mutex>
+#include <thread>
+
+template <class T>
+class TLSContainer {
+    struct item {
+        std::thread::id owner;
+        T * p;
+    };
+    std::mutex mutex;
+    std::vector<item> all;
+public:
+    T * find(bool remove) {
+        T * r = nullptr;
+        std::thread::id tid = std::this_thread::get_id();
+        mutex.lock();
+        for(uint32_t i=0; i < all.size(); i++) {
+            if (all[i].owner == tid) {
+                r = all[i].p;
+                if (remove) {
+                    all.erase(all.begin() + i);
+                }
+                break;
+            }
+        }
+        mutex.unlock();
+        return r;
+    }
+
+    void add(T * p) {
+        item i;
+        i.owner = std::this_thread::get_id();
+        i.p = p;
+        mutex.lock();
+        all.push_back(i);
+        mutex.unlock();
+    }
+    TLSContainer() {}
+    ~TLSContainer() {}
+
+    static TLSContainer<T> instance;
+};
+
+template <class T>
+class TLSWrapper
+{
+public:
+    TLSWrapper() {}
+    ~TLSWrapper() {
+        T * p = TLSContainer<T>::instance.find(true);
+        if (p) {
+            delete p;
+        }
+    }
+    T & attach() {
+        T * p = TLSContainer<T>::instance.find(false);
+        if (!p ){
+            p = new T();
+            TLSContainer<T>::instance.add(p);
+        }
+        return *p;
+    }
+    static thread_local TLSWrapper<T> instance;
+};
+
+#define TLS_INSTANCE()                                                                                                 \
+       template<class T> TLSContainer<T> TLSContainer<T>::instance;            \
+       template<class T> thread_local TLSWrapper<T> TLSWrapper<T>::instance
+
+#endif // _TLSWRAPPER_HPP
index 6102482..ee4623d 100644 (file)
@@ -84,6 +84,7 @@ enum VkResult
        VK_ERROR_INVALID_EXTERNAL_HANDLE                                                = -1000072003,
        VK_ERROR_FRAGMENTATION                                                                  = -1000161000,
        VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS                                 = -1000257000,
+       VK_ERROR_VALIDATION_FAILED                                                              = -1000011001,
        VK_ERROR_INVALID_PIPELINE_CACHE_DATA                                    = -1000298000,
        VK_ERROR_NO_PIPELINE_MATCH                                                              = -1000298001,
        VK_ERROR_SURFACE_LOST_KHR                                                               = -1000000000,
@@ -105,7 +106,6 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_SUBMIT_INFO                                                                                                           = 4,
        VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO                                                                                          = 5,
        VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE                                                                                           = 6,
-       VK_STRUCTURE_TYPE_BIND_SPARSE_INFO                                                                                                      = 7,
        VK_STRUCTURE_TYPE_FENCE_CREATE_INFO                                                                                                     = 8,
        VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO                                                                                         = 9,
        VK_STRUCTURE_TYPE_EVENT_CREATE_INFO                                                                                                     = 10,
@@ -114,7 +114,6 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO                                                                                       = 13,
        VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO                                                                                                     = 14,
        VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO                                                                                        = 15,
-       VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO                                                                                     = 16,
        VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO                                                                            = 17,
        VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO                                                                     = 18,
        VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO                                                       = 19,
@@ -407,6 +406,7 @@ enum VkStructureType
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT                         = 1000377000,
        VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT                                       = 1000381000,
        VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT                                                          = 1000381001,
+       VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT                                                                            = 1000435000,
        VK_STRUCTURE_TYPE_MAX_ENUM                                                                                                                      = 0x7FFFFFFF,
 };
 
@@ -452,7 +452,6 @@ enum VkObjectType
        VK_OBJECT_TYPE_QUERY_POOL                                       = 12,
        VK_OBJECT_TYPE_BUFFER_VIEW                                      = 13,
        VK_OBJECT_TYPE_IMAGE_VIEW                                       = 14,
-       VK_OBJECT_TYPE_SHADER_MODULE                            = 15,
        VK_OBJECT_TYPE_PIPELINE_CACHE                           = 16,
        VK_OBJECT_TYPE_PIPELINE_LAYOUT                          = 17,
        VK_OBJECT_TYPE_RENDER_PASS                                      = 18,
@@ -1205,6 +1204,7 @@ enum VkDriverId
        VK_DRIVER_ID_MESA_TURNIP                                = 18,
        VK_DRIVER_ID_MESA_V3DV                                  = 19,
        VK_DRIVER_ID_MESA_PANVK                                 = 20,
+       VK_DRIVER_ID_SAMSUNG_PROPRIETARY                = 21,
        VK_DRIVER_ID_MAX_ENUM                                   = 0x7FFFFFFF,
 };
 
@@ -1611,7 +1611,6 @@ enum VkQueueFlagBits
        VK_QUEUE_GRAPHICS_BIT           = 0x00000001,
        VK_QUEUE_COMPUTE_BIT            = 0x00000002,
        VK_QUEUE_TRANSFER_BIT           = 0x00000004,
-       VK_QUEUE_SPARSE_BINDING_BIT     = 0x00000008,
        VK_QUEUE_PROTECTED_BIT          = 0x00000010,
        VK_QUEUE_FLAG_BITS_MAX_ENUM     = 0x7FFFFFFF,
 };
@@ -1746,7 +1745,6 @@ enum VkPipelineCreateFlagBits
 {
        VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT                     = 0x00000001,
        VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT                        = 0x00000002,
-       VK_PIPELINE_CREATE_DERIVATIVE_BIT                                       = 0x00000004,
        VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT     = 0x00000008,
        VK_PIPELINE_CREATE_DISPATCH_BASE_BIT                            = 0x00000010,
        VK_PIPELINE_CREATE_DISPATCH_BASE                                        = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
@@ -1853,7 +1851,6 @@ typedef uint32_t VkCommandPoolCreateFlags;
 
 enum VkCommandPoolResetFlagBits
 {
-       VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT     = 0x00000001,
        VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM        = 0x7FFFFFFF,
 };
 typedef uint32_t VkCommandPoolResetFlags;
@@ -2387,3 +2384,4 @@ VK_DEFINE_PLATFORM_TYPE(CAMetalLayer,                             void*)
 #define VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_SPEC_VERSION 2
 #define VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION 1
 #define VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION 1
+#define VK_EXT_APPLICATION_PARAMETERS_SPEC_VERSION 1
index 15ef7db..726cbc7 100644 (file)
@@ -295,6 +295,10 @@ void getInstanceExtensionFunctions (uint32_t apiVersion, ::std::string extName,
        {
                return;
        }
+       if (extName == "VK_EXT_application_parameters")
+       {
+               return;
+       }
        DE_FATAL("Extension name not found");
 }
 
@@ -629,6 +633,10 @@ void getDeviceExtensionFunctions (uint32_t apiVersion, ::std::string extName, ::
                functions.push_back("vkCmdSetColorWriteEnableEXT");
                return;
        }
+       if (extName == "VK_EXT_application_parameters")
+       {
+               return;
+       }
        DE_FATAL("Extension name not found");
 }
 
index d7456df..b1fcae6 100644 (file)
@@ -1526,3 +1526,8 @@ template<> VkStructureType getStructureType<VkPipelineColorWriteCreateInfoEXT> (
        return VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT;
 }
 
+template<> VkStructureType getStructureType<VkApplicationParametersEXT> (void)
+{
+       return VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT;
+}
+
index 8c26e67..f6e70e8 100644 (file)
@@ -27,5 +27,6 @@ static const struct
        {"VK_DRIVER_ID_MESA_TURNIP", 18},
        {"VK_DRIVER_ID_MESA_V3DV", 19},
        {"VK_DRIVER_ID_MESA_PANVK", 20},
+       {"VK_DRIVER_ID_SAMSUNG_PROPRIETARY", 21},
        {"VK_DRIVER_ID_MAX_ENUM", 0x7FFFFFFF}
 };
index 70b8033..eaa0761 100644 (file)
@@ -683,3 +683,4 @@ std::ostream&       operator<<      (std::ostream& s, const VkVertexInputAttributeDescripti
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPhysicalDeviceColorWriteEnableFeaturesEXT& value);
 std::ostream&  operator<<      (std::ostream& s, const VkPipelineColorWriteCreateInfoEXT& value);
+std::ostream&  operator<<      (std::ostream& s, const VkApplicationParametersEXT& value);
index 63bc08e..fdbf3e5 100644 (file)
@@ -87,6 +87,7 @@ const char* getResultName (VkResult value)
                case VK_ERROR_INVALID_EXTERNAL_HANDLE:                                          return "VK_ERROR_INVALID_EXTERNAL_HANDLE";
                case VK_ERROR_FRAGMENTATION:                                                            return "VK_ERROR_FRAGMENTATION";
                case VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS:                           return "VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS";
+               case VK_ERROR_VALIDATION_FAILED:                                                        return "VK_ERROR_VALIDATION_FAILED";
                case VK_ERROR_INVALID_PIPELINE_CACHE_DATA:                                      return "VK_ERROR_INVALID_PIPELINE_CACHE_DATA";
                case VK_ERROR_NO_PIPELINE_MATCH:                                                        return "VK_ERROR_NO_PIPELINE_MATCH";
                case VK_ERROR_SURFACE_LOST_KHR:                                                         return "VK_ERROR_SURFACE_LOST_KHR";
@@ -112,7 +113,6 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_SUBMIT_INFO:                                                                                                             return "VK_STRUCTURE_TYPE_SUBMIT_INFO";
                case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO:                                                                                    return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO";
                case VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE:                                                                                             return "VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE";
-               case VK_STRUCTURE_TYPE_BIND_SPARSE_INFO:                                                                                                return "VK_STRUCTURE_TYPE_BIND_SPARSE_INFO";
                case VK_STRUCTURE_TYPE_FENCE_CREATE_INFO:                                                                                               return "VK_STRUCTURE_TYPE_FENCE_CREATE_INFO";
                case VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO:                                                                                   return "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO";
                case VK_STRUCTURE_TYPE_EVENT_CREATE_INFO:                                                                                               return "VK_STRUCTURE_TYPE_EVENT_CREATE_INFO";
@@ -121,7 +121,6 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO:                                                                                 return "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO";
                case VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO:                                                                                               return "VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO";
                case VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO:                                                                                  return "VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO";
-               case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO:                                                                               return "VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO";
                case VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO:                                                                              return "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO";
                case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO:                                                               return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO";
                case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO:                                                 return "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO";
@@ -414,6 +413,7 @@ const char* getStructureTypeName (VkStructureType value)
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:                   return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT";
                case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:                                 return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT";
                case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:                                                    return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT";
+               case VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT:                                                                              return "VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT";
                case VK_STRUCTURE_TYPE_MAX_ENUM:                                                                                                                return "VK_STRUCTURE_TYPE_MAX_ENUM";
                default:                                                                                                                                                                return DE_NULL;
        }
@@ -467,7 +467,6 @@ const char* getObjectTypeName (VkObjectType value)
                case VK_OBJECT_TYPE_QUERY_POOL:                                 return "VK_OBJECT_TYPE_QUERY_POOL";
                case VK_OBJECT_TYPE_BUFFER_VIEW:                                return "VK_OBJECT_TYPE_BUFFER_VIEW";
                case VK_OBJECT_TYPE_IMAGE_VIEW:                                 return "VK_OBJECT_TYPE_IMAGE_VIEW";
-               case VK_OBJECT_TYPE_SHADER_MODULE:                              return "VK_OBJECT_TYPE_SHADER_MODULE";
                case VK_OBJECT_TYPE_PIPELINE_CACHE:                             return "VK_OBJECT_TYPE_PIPELINE_CACHE";
                case VK_OBJECT_TYPE_PIPELINE_LAYOUT:                    return "VK_OBJECT_TYPE_PIPELINE_LAYOUT";
                case VK_OBJECT_TYPE_RENDER_PASS:                                return "VK_OBJECT_TYPE_RENDER_PASS";
@@ -1347,6 +1346,7 @@ const char* getDriverIdName (VkDriverId value)
                case VK_DRIVER_ID_MESA_TURNIP:                                  return "VK_DRIVER_ID_MESA_TURNIP";
                case VK_DRIVER_ID_MESA_V3DV:                                    return "VK_DRIVER_ID_MESA_V3DV";
                case VK_DRIVER_ID_MESA_PANVK:                                   return "VK_DRIVER_ID_MESA_PANVK";
+               case VK_DRIVER_ID_SAMSUNG_PROPRIETARY:                  return "VK_DRIVER_ID_SAMSUNG_PROPRIETARY";
                case VK_DRIVER_ID_MAX_ENUM:                                             return "VK_DRIVER_ID_MAX_ENUM";
                default:                                                                                return DE_NULL;
        }
@@ -1857,7 +1857,6 @@ tcu::Format::Bitfield<32> getQueueFlagsStr (VkQueueFlags value)
                tcu::Format::BitDesc(VK_QUEUE_GRAPHICS_BIT,                     "VK_QUEUE_GRAPHICS_BIT"),
                tcu::Format::BitDesc(VK_QUEUE_COMPUTE_BIT,                      "VK_QUEUE_COMPUTE_BIT"),
                tcu::Format::BitDesc(VK_QUEUE_TRANSFER_BIT,                     "VK_QUEUE_TRANSFER_BIT"),
-               tcu::Format::BitDesc(VK_QUEUE_SPARSE_BINDING_BIT,       "VK_QUEUE_SPARSE_BINDING_BIT"),
                tcu::Format::BitDesc(VK_QUEUE_PROTECTED_BIT,            "VK_QUEUE_PROTECTED_BIT"),
                tcu::Format::BitDesc(VK_QUEUE_FLAG_BITS_MAX_ENUM,       "VK_QUEUE_FLAG_BITS_MAX_ENUM"),
        };
@@ -2028,7 +2027,6 @@ tcu::Format::Bitfield<32> getPipelineCreateFlagsStr (VkPipelineCreateFlags value
        {
                tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT,                       "VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT"),
                tcu::Format::BitDesc(VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT,                          "VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT"),
-               tcu::Format::BitDesc(VK_PIPELINE_CREATE_DERIVATIVE_BIT,                                         "VK_PIPELINE_CREATE_DERIVATIVE_BIT"),
                tcu::Format::BitDesc(VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,       "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT"),
                tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,                                      "VK_PIPELINE_CREATE_DISPATCH_BASE_BIT"),
                tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISPATCH_BASE,                                          "VK_PIPELINE_CREATE_DISPATCH_BASE"),
@@ -2174,8 +2172,7 @@ tcu::Format::Bitfield<32> getCommandPoolResetFlagsStr (VkCommandPoolResetFlags v
 {
        static const tcu::Format::BitDesc s_desc[] =
        {
-               tcu::Format::BitDesc(VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT,       "VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT"),
-               tcu::Format::BitDesc(VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM,          "VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM"),
+               tcu::Format::BitDesc(VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM,  "VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM"),
        };
        return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
 }
@@ -7630,3 +7627,16 @@ std::ostream& operator<< (std::ostream& s, const VkPipelineColorWriteCreateInfoE
        s << '}';
        return s;
 }
+
+std::ostream& operator<< (std::ostream& s, const VkApplicationParametersEXT& value)
+{
+       s << "VkApplicationParametersEXT = {\n";
+       s << "\tsType = " << value.sType << '\n';
+       s << "\tpNext = " << value.pNext << '\n';
+       s << "\tvendorID = " << value.vendorID << '\n';
+       s << "\tdeviceID = " << value.deviceID << '\n';
+       s << "\tkey = " << value.key << '\n';
+       s << "\tvalue = " << value.value << '\n';
+       s << '}';
+       return s;
+}
index 8b28251..4edb970 100644 (file)
@@ -3802,6 +3802,16 @@ struct VkPipelineColorWriteCreateInfoEXT
        const VkBool32* pColorWriteEnables;
 };
 
+struct VkApplicationParametersEXT
+{
+       VkStructureType sType;
+       const void*             pNext;
+       uint32_t                vendorID;
+       uint32_t                deviceID;
+       uint32_t                key;
+       uint64_t                value;
+};
+
 typedef VkPhysicalDeviceVariablePointersFeatures VkPhysicalDeviceVariablePointerFeatures;
 
 typedef VkPhysicalDeviceShaderDrawParametersFeatures VkPhysicalDeviceShaderDrawParameterFeatures;
index 9c814b3..9cb8411 100644 (file)
@@ -68,7 +68,7 @@ extern "C" {
 #define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
 
 // Version of this file
-#define VK_HEADER_VERSION 7
+#define VK_HEADER_VERSION 8
 
 // Vulkan SC variant number
 #define VKSC_API_VARIANT 1
@@ -150,6 +150,7 @@ typedef enum VkResult {
     VK_ERROR_INVALID_EXTERNAL_HANDLE = -1000072003,
     VK_ERROR_FRAGMENTATION = -1000161000,
     VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS = -1000257000,
+    VK_ERROR_VALIDATION_FAILED = -1000011001,
     VK_ERROR_INVALID_PIPELINE_CACHE_DATA = -1000298000,
     VK_ERROR_NO_PIPELINE_MATCH = -1000298001,
     VK_ERROR_SURFACE_LOST_KHR = -1000000000,
@@ -170,7 +171,6 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_SUBMIT_INFO = 4,
     VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO = 5,
     VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 6,
-    VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 7,
     VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 8,
     VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 9,
     VK_STRUCTURE_TYPE_EVENT_CREATE_INFO = 10,
@@ -179,7 +179,6 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 13,
     VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 14,
     VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 15,
-    VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 16,
     VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 17,
     VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 18,
     VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 19,
@@ -472,6 +471,7 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT = 1000377000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT = 1000381000,
     VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT = 1000381001,
+    VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT = 1000435000,
     VK_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF
 } VkStructureType;
 
@@ -515,7 +515,6 @@ typedef enum VkObjectType {
     VK_OBJECT_TYPE_QUERY_POOL = 12,
     VK_OBJECT_TYPE_BUFFER_VIEW = 13,
     VK_OBJECT_TYPE_IMAGE_VIEW = 14,
-    VK_OBJECT_TYPE_SHADER_MODULE = 15,
     VK_OBJECT_TYPE_PIPELINE_CACHE = 16,
     VK_OBJECT_TYPE_PIPELINE_LAYOUT = 17,
     VK_OBJECT_TYPE_RENDER_PASS = 18,
@@ -1287,7 +1286,6 @@ typedef enum VkQueueFlagBits {
     VK_QUEUE_GRAPHICS_BIT = 0x00000001,
     VK_QUEUE_COMPUTE_BIT = 0x00000002,
     VK_QUEUE_TRANSFER_BIT = 0x00000004,
-    VK_QUEUE_SPARSE_BINDING_BIT = 0x00000008,
     VK_QUEUE_PROTECTED_BIT = 0x00000010,
     VK_QUEUE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkQueueFlagBits;
@@ -1415,7 +1413,6 @@ typedef VkFlags VkColorComponentFlags;
 typedef enum VkPipelineCreateFlagBits {
     VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT = 0x00000001,
     VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT = 0x00000002,
-    VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004,
     VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT = 0x00000008,
     VK_PIPELINE_CREATE_DISPATCH_BASE_BIT = 0x00000010,
     VK_PIPELINE_CREATE_DISPATCH_BASE = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
@@ -1520,7 +1517,6 @@ typedef enum VkCommandPoolCreateFlagBits {
 typedef VkFlags VkCommandPoolCreateFlags;
 
 typedef enum VkCommandPoolResetFlagBits {
-    VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT = 0x00000001,
     VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkCommandPoolResetFlagBits;
 typedef VkFlags VkCommandPoolResetFlags;
@@ -4201,6 +4197,7 @@ typedef enum VkDriverId {
     VK_DRIVER_ID_MESA_TURNIP = 18,
     VK_DRIVER_ID_MESA_V3DV = 19,
     VK_DRIVER_ID_MESA_PANVK = 20,
+    VK_DRIVER_ID_SAMSUNG_PROPRIETARY = 21,
     VK_DRIVER_ID_MAX_ENUM = 0x7FFFFFFF
 } VkDriverId;
 
@@ -6240,12 +6237,12 @@ typedef struct VkCheckpointData2NV {
 } VkCheckpointData2NV;
 
 typedef void (VKAPI_PTR *PFN_vkCmdSetEvent2KHR)(VkCommandBuffer                   commandBuffer, VkEvent                                             event, const VkDependencyInfoKHR*                          pDependencyInfo);
-typedef void (VKAPI_PTR *PFN_vkCmdResetEvent2KHR)(VkCommandBuffer                   commandBuffer, VkEvent                                             event, VkPipelineStageFlags2KHR                            stageMask);
+typedef void (VKAPI_PTR *PFN_vkCmdResetEvent2KHR)(VkCommandBuffer                   commandBuffer, VkEvent                                             event, VkPipelineStageFlags2KHR            stageMask);
 typedef void (VKAPI_PTR *PFN_vkCmdWaitEvents2KHR)(VkCommandBuffer                   commandBuffer, deUint32                                            eventCount, const VkEvent*                     pEvents, const VkDependencyInfoKHR*         pDependencyInfos);
 typedef void (VKAPI_PTR *PFN_vkCmdPipelineBarrier2KHR)(VkCommandBuffer                   commandBuffer, const VkDependencyInfoKHR*                                pDependencyInfo);
-typedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp2KHR)(VkCommandBuffer                   commandBuffer, VkPipelineStageFlags2KHR                            stage, VkQueryPool                                         queryPool, deUint32                                            query);
+typedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp2KHR)(VkCommandBuffer                   commandBuffer, VkPipelineStageFlags2KHR            stage, VkQueryPool                                         queryPool, deUint32                                            query);
 typedef VkResult (VKAPI_PTR *PFN_vkQueueSubmit2KHR)(VkQueue                           queue, deUint32                            submitCount, const VkSubmitInfo2KHR*           pSubmits, VkFence           fence);
-typedef void (VKAPI_PTR *PFN_vkCmdWriteBufferMarker2AMD)(VkCommandBuffer                   commandBuffer, VkPipelineStageFlags2KHR                            stage, VkBuffer                                            dstBuffer, VkDeviceSize                                        dstOffset, deUint32                                            marker);
+typedef void (VKAPI_PTR *PFN_vkCmdWriteBufferMarker2AMD)(VkCommandBuffer                   commandBuffer, VkPipelineStageFlags2KHR            stage, VkBuffer                                            dstBuffer, VkDeviceSize                                        dstOffset, deUint32                                            marker);
 typedef void (VKAPI_PTR *PFN_vkGetQueueCheckpointData2NV)(VkQueue queue, deUint32* pCheckpointDataCount, VkCheckpointData2NV* pCheckpointData);
 
 #ifndef VK_NO_PROTOTYPES
@@ -7760,6 +7757,20 @@ VKAPI_ATTR void                                    VKAPI_CALL vkCmdSetColorWrite
     const VkBool32*                             pColorWriteEnables);
 #endif
 
+
+#define VK_EXT_application_parameters 1
+#define VK_EXT_APPLICATION_PARAMETERS_SPEC_VERSION 1
+#define VK_EXT_APPLICATION_PARAMETERS_EXTENSION_NAME "VK_EXT_application_parameters"
+typedef struct VkApplicationParametersEXT {
+    VkStructureType    sType;
+    const void*        pNext;
+    deUint32           vendorID;
+    deUint32           deviceID;
+    deUint32           key;
+    deUint64           value;
+} VkApplicationParametersEXT;
+
+
 #ifdef __cplusplus
 }
 #endif
index 42cb0d2..c5d2bf6 100644 (file)
@@ -1,7 +1,6 @@
 #ifndef _VULKAN_JSON_DATA_HPP
 #define _VULKAN_JSON_DATA_HPP
 
-
 /*
  * Copyright (c) 2021 The Khronos Group Inc.
  *
 namespace vk_json {
 
 static thread_local int s_num_spaces    = 0;
+#if defined(USE_THREAD_LOCAL_WAR)
+// Workaround (off by default) for certain platforms that have a thread_local libc bug
+std::stringstream & TLSGetStrStream();
+#define _string_stream  TLSGetStrStream()
+#else
 static thread_local std::stringstream _string_stream;
+#endif
+
+static void dumpPNextChain(const void* pNext);
 
 // By default, redirect to std::cout. Can stream it to a stringstream if needed.
 //#define   _OUT std::cout
@@ -78,66 +85,66 @@ static thread_local std::stringstream _string_stream;
 // To make sure the generated data is consistent across platforms,
 // we typecast to 32-bit and dump the data.
 // The value is not expected to exceed the range.
-static void print_size_t(const size_t* o, const std::string& s, bool commaNeeded)
+static void print_size_t(const size_t* o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_SPACE
     _OUT << "\"" << s << "\"" << " : " << static_cast<deUint32>(*o) << (commaNeeded ? "," : "") << std::endl;\
 }
-static void print_size_t(size_t o, const std::string& s, bool commaNeeded)
+static void print_size_t(size_t o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_SPACE
     _OUT << "\"" << s << "\"" << " : " << static_cast<deUint32>(o) << (commaNeeded ? "," : "") << std::endl;\
 }
 
-static void print_int32_t(deInt32 o, const std::string& s, bool commaNeeded)
+static void print_int32_t(deInt32 o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_int32_t(const deInt32 * o, const std::string& s, bool commaNeeded)
+static void print_int32_t(const deInt32 * o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_uint32_t(deUint32 o, const std::string& s, bool commaNeeded)
+static void print_uint32_t(deUint32 o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_uint32_t(const deUint32 * o, const std::string& s, bool commaNeeded)
+static void print_uint32_t(const deUint32 * o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_uint8_t(deUint8 o, const std::string& s, bool commaNeeded)
+static void print_uint8_t(deUint8 o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_uint8_t(const deUint8 * o, const std::string& s, bool commaNeeded)
+static void print_uint8_t(const deUint8 * o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_uint64_t(deUint64 o, const std::string& s, bool commaNeeded)
+static void print_uint64_t(deUint64 o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_uint64_t(const deUint64 * o, const std::string& s, bool commaNeeded)
+static void print_uint64_t(const deUint64 * o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_float(float o, const std::string& s, bool commaNeeded)
+static void print_float(float o, const std::string& s, bool commaNeeded=true)
 {
        if (std::isnan(o))
        {
                PRINT_SPACE
                if (s != "")
-                       _OUT << "\"" << s << "\"" << " : NaN" << (commaNeeded ? "," : "") << std::endl;
+                       _OUT << "\"" << s << "\"" << " : \"NaN\"" << (commaNeeded ? "," : "") << std::endl;
                else
-                       _OUT << "NaN" << (commaNeeded ? "," : "") << std::endl;
+                       _OUT << "\"NaN\"" << (commaNeeded ? "," : "") << std::endl;
        }
        else
        {
@@ -145,15 +152,15 @@ static void print_float(float o, const std::string& s, bool commaNeeded)
        }
 }
 
-static void print_float(const float * o, const std::string& s, bool commaNeeded)
+static void print_float(const float * o, const std::string& s, bool commaNeeded=true)
 {
        if (std::isnan(*o))
        {
                PRINT_SPACE
                if (s != "")
-                       _OUT << "\"" << s << "\"" << " : NaN" << (commaNeeded ? "," : "") << std::endl;
+                       _OUT << "\"" << s << "\"" << " : \"NaN\"" << (commaNeeded ? "," : "") << std::endl;
                else
-                       _OUT << "NaN" << (commaNeeded ? "," : "") << std::endl;
+                       _OUT << "\"NaN\"" << (commaNeeded ? "," : "") << std::endl;
        }
        else
        {
@@ -161,57 +168,57 @@ static void print_float(const float * o, const std::string& s, bool commaNeeded)
        }
 }
 
-static void print_int(int o, const std::string& s, bool commaNeeded)
+static void print_int(int o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_int(const int * o, const std::string& s, bool commaNeeded)
+static void print_int(const int * o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_double(double o, const std::string& s, bool commaNeeded)
+static void print_double(double o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_double(const double * o, const std::string& s, bool commaNeeded)
+static void print_double(const double * o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_int64_t(deInt64 o, const std::string& s, bool commaNeeded)
+static void print_int64_t(deInt64 o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_int64_t(const deInt64 * o, const std::string& s, bool commaNeeded)
+static void print_int64_t(const deInt64 * o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_uint16_t(deUint16 o, const std::string& s, bool commaNeeded)
+static void print_uint16_t(deUint16 o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_uint16_t(const deUint16 * o, const std::string& s, bool commaNeeded)
+static void print_uint16_t(const deUint16 * o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_char(const char * const* o, const std::string& s, bool commaNeeded)
+static void print_char(const char * const* o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_STR(commaNeeded)
 }
 
-static void print_char(char o, const std::string& s, bool commaNeeded)
+static void print_char(char o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_VAL(commaNeeded)
 }
 
-static void print_char(const char * o, const std::string& s, bool commaNeeded)
+static void print_char(const char * o, const std::string& s, bool commaNeeded=true)
 {
     PRINT_STR(commaNeeded)
 }
@@ -273,7 +280,7 @@ std::ostream& operator<< (std::ostream& str, const Base64Formatter& fmt)
 
 inline Base64Formatter toBase64(const deUint8* bytes, int numBytes) {return Base64Formatter(bytes, numBytes); }
 
-static void print_void_data(const void * o, int oSize, const std::string& s, bool commaNeeded)
+static void print_void_data(const void * o, int oSize, const std::string& s, bool commaNeeded=true)
 {
        if (o != NULL && oSize != 0)
        {
@@ -285,1696 +292,59 @@ static void print_void_data(const void * o, int oSize, const std::string& s, boo
        }
 }
 
-/*************************************** Begin prototypes ***********************************/
-static void print_VkSampleMask(VkSampleMask obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSampleMask(const VkSampleMask * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBool32(VkBool32 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBool32(const VkBool32 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFlags(VkFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFlags(const VkFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFlags64(VkFlags64 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFlags64(const VkFlags64 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceSize(VkDeviceSize obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceSize(const VkDeviceSize * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceAddress(VkDeviceAddress obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceAddress(const VkDeviceAddress * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFramebufferCreateFlags(VkFramebufferCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFramebufferCreateFlags(const VkFramebufferCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryPoolCreateFlags(VkQueryPoolCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryPoolCreateFlags(const VkQueryPoolCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassCreateFlags(VkRenderPassCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassCreateFlags(const VkRenderPassCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerCreateFlags(VkSamplerCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerCreateFlags(const VkSamplerCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineLayoutCreateFlags(VkPipelineLayoutCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineLayoutCreateFlags(const VkPipelineLayoutCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheCreateFlags(VkPipelineCacheCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheCreateFlags(const VkPipelineCacheCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineDepthStencilStateCreateFlags(VkPipelineDepthStencilStateCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineDepthStencilStateCreateFlags(const VkPipelineDepthStencilStateCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineDynamicStateCreateFlags(VkPipelineDynamicStateCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineDynamicStateCreateFlags(const VkPipelineDynamicStateCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineColorBlendStateCreateFlags(VkPipelineColorBlendStateCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineColorBlendStateCreateFlags(const VkPipelineColorBlendStateCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineMultisampleStateCreateFlags(VkPipelineMultisampleStateCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineMultisampleStateCreateFlags(const VkPipelineMultisampleStateCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationStateCreateFlags(VkPipelineRasterizationStateCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationStateCreateFlags(const VkPipelineRasterizationStateCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineViewportStateCreateFlags(VkPipelineViewportStateCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineViewportStateCreateFlags(const VkPipelineViewportStateCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineTessellationStateCreateFlags(VkPipelineTessellationStateCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineTessellationStateCreateFlags(const VkPipelineTessellationStateCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineInputAssemblyStateCreateFlags(VkPipelineInputAssemblyStateCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineInputAssemblyStateCreateFlags(const VkPipelineInputAssemblyStateCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineVertexInputStateCreateFlags(VkPipelineVertexInputStateCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineVertexInputStateCreateFlags(const VkPipelineVertexInputStateCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineShaderStageCreateFlags(VkPipelineShaderStageCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineShaderStageCreateFlags(const VkPipelineShaderStageCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayoutCreateFlags(VkDescriptorSetLayoutCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayoutCreateFlags(const VkDescriptorSetLayoutCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferViewCreateFlags(VkBufferViewCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferViewCreateFlags(const VkBufferViewCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkInstanceCreateFlags(VkInstanceCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkInstanceCreateFlags(const VkInstanceCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceCreateFlags(VkDeviceCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceCreateFlags(const VkDeviceCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceQueueCreateFlags(const VkDeviceQueueCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueueFlags(VkQueueFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueueFlags(const VkQueueFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryPropertyFlags(VkMemoryPropertyFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryPropertyFlags(const VkMemoryPropertyFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryHeapFlags(VkMemoryHeapFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryHeapFlags(const VkMemoryHeapFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAccessFlags(VkAccessFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAccessFlags(const VkAccessFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferUsageFlags(VkBufferUsageFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferUsageFlags(const VkBufferUsageFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferCreateFlags(VkBufferCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferCreateFlags(const VkBufferCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkShaderStageFlags(VkShaderStageFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkShaderStageFlags(const VkShaderStageFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageUsageFlags(VkImageUsageFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageUsageFlags(const VkImageUsageFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageCreateFlags(VkImageCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageCreateFlags(const VkImageCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageViewCreateFlags(VkImageViewCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageViewCreateFlags(const VkImageViewCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCreateFlags(VkPipelineCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCreateFlags(const VkPipelineCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkColorComponentFlags(VkColorComponentFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkColorComponentFlags(const VkColorComponentFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFenceCreateFlags(VkFenceCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFenceCreateFlags(const VkFenceCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreCreateFlags(VkSemaphoreCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreCreateFlags(const VkSemaphoreCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFormatFeatureFlags(VkFormatFeatureFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFormatFeatureFlags(const VkFormatFeatureFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryControlFlags(VkQueryControlFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryControlFlags(const VkQueryControlFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryResultFlags(VkQueryResultFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryResultFlags(const VkQueryResultFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkEventCreateFlags(VkEventCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkEventCreateFlags(const VkEventCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolCreateFlags(VkCommandPoolCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolCreateFlags(const VkCommandPoolCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolResetFlags(VkCommandPoolResetFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolResetFlags(const VkCommandPoolResetFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferResetFlags(VkCommandBufferResetFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferResetFlags(const VkCommandBufferResetFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferUsageFlags(VkCommandBufferUsageFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferUsageFlags(const VkCommandBufferUsageFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryPipelineStatisticFlags(VkQueryPipelineStatisticFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryPipelineStatisticFlags(const VkQueryPipelineStatisticFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryMapFlags(VkMemoryMapFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryMapFlags(const VkMemoryMapFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageAspectFlags(VkImageAspectFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageAspectFlags(const VkImageAspectFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDescriptionFlags(VkSubpassDescriptionFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDescriptionFlags(const VkSubpassDescriptionFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineStageFlags(VkPipelineStageFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineStageFlags(const VkPipelineStageFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSampleCountFlags(VkSampleCountFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSampleCountFlags(const VkSampleCountFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentDescriptionFlags(VkAttachmentDescriptionFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentDescriptionFlags(const VkAttachmentDescriptionFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkStencilFaceFlags(VkStencilFaceFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkStencilFaceFlags(const VkStencilFaceFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCullModeFlags(VkCullModeFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCullModeFlags(const VkCullModeFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorPoolCreateFlags(VkDescriptorPoolCreateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorPoolCreateFlags(const VkDescriptorPoolCreateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorPoolResetFlags(VkDescriptorPoolResetFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorPoolResetFlags(const VkDescriptorPoolResetFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDependencyFlags(VkDependencyFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDependencyFlags(const VkDependencyFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubgroupFeatureFlags(VkSubgroupFeatureFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubgroupFeatureFlags(const VkSubgroupFeatureFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterDescriptionFlagsKHR(VkPerformanceCounterDescriptionFlagsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterDescriptionFlagsKHR(const VkPerformanceCounterDescriptionFlagsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAcquireProfilingLockFlagsKHR(VkAcquireProfilingLockFlagsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAcquireProfilingLockFlagsKHR(const VkAcquireProfilingLockFlagsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreWaitFlags(VkSemaphoreWaitFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreWaitFlags(const VkSemaphoreWaitFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRefreshObjectFlagsKHR(VkRefreshObjectFlagsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRefreshObjectFlagsKHR(const VkRefreshObjectFlagsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAccessFlags2KHR(VkAccessFlags2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAccessFlags2KHR(const VkAccessFlags2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineStageFlags2KHR(VkPipelineStageFlags2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineStageFlags2KHR(const VkPipelineStageFlags2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCompositeAlphaFlagsKHR(VkCompositeAlphaFlagsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCompositeAlphaFlagsKHR(const VkCompositeAlphaFlagsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlaneAlphaFlagsKHR(VkDisplayPlaneAlphaFlagsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlaneAlphaFlagsKHR(const VkDisplayPlaneAlphaFlagsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceTransformFlagsKHR(VkSurfaceTransformFlagsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceTransformFlagsKHR(const VkSurfaceTransformFlagsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSwapchainCreateFlagsKHR(VkSwapchainCreateFlagsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSwapchainCreateFlagsKHR(const VkSwapchainCreateFlagsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayModeCreateFlagsKHR(VkDisplayModeCreateFlagsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayModeCreateFlagsKHR(const VkDisplayModeCreateFlagsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplaySurfaceCreateFlagsKHR(VkDisplaySurfaceCreateFlagsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplaySurfaceCreateFlagsKHR(const VkDisplaySurfaceCreateFlagsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkHeadlessSurfaceCreateFlagsEXT(VkHeadlessSurfaceCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkHeadlessSurfaceCreateFlagsEXT(const VkHeadlessSurfaceCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPeerMemoryFeatureFlags(VkPeerMemoryFeatureFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPeerMemoryFeatureFlags(const VkPeerMemoryFeatureFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryAllocateFlags(VkMemoryAllocateFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryAllocateFlags(const VkMemoryAllocateFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupPresentModeFlagsKHR(VkDeviceGroupPresentModeFlagsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupPresentModeFlagsKHR(const VkDeviceGroupPresentModeFlagsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryHandleTypeFlags(VkExternalMemoryHandleTypeFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryHandleTypeFlags(const VkExternalMemoryHandleTypeFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryFeatureFlags(VkExternalMemoryFeatureFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryFeatureFlags(const VkExternalMemoryFeatureFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalSemaphoreHandleTypeFlags(VkExternalSemaphoreHandleTypeFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalSemaphoreHandleTypeFlags(const VkExternalSemaphoreHandleTypeFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalSemaphoreFeatureFlags(VkExternalSemaphoreFeatureFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalSemaphoreFeatureFlags(const VkExternalSemaphoreFeatureFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreImportFlags(VkSemaphoreImportFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreImportFlags(const VkSemaphoreImportFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalFenceHandleTypeFlags(VkExternalFenceHandleTypeFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalFenceHandleTypeFlags(const VkExternalFenceHandleTypeFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalFenceFeatureFlags(VkExternalFenceFeatureFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalFenceFeatureFlags(const VkExternalFenceFeatureFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFenceImportFlags(VkFenceImportFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFenceImportFlags(const VkFenceImportFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceCounterFlagsEXT(VkSurfaceCounterFlagsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceCounterFlagsEXT(const VkSurfaceCounterFlagsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineDiscardRectangleStateCreateFlagsEXT(VkPipelineDiscardRectangleStateCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineDiscardRectangleStateCreateFlagsEXT(const VkPipelineDiscardRectangleStateCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessageSeverityFlagsEXT(VkDebugUtilsMessageSeverityFlagsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessageSeverityFlagsEXT(const VkDebugUtilsMessageSeverityFlagsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessageTypeFlagsEXT(VkDebugUtilsMessageTypeFlagsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessageTypeFlagsEXT(const VkDebugUtilsMessageTypeFlagsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessengerCreateFlagsEXT(VkDebugUtilsMessengerCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessengerCreateFlagsEXT(const VkDebugUtilsMessengerCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessengerCallbackDataFlagsEXT(VkDebugUtilsMessengerCallbackDataFlagsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessengerCallbackDataFlagsEXT(const VkDebugUtilsMessengerCallbackDataFlagsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationConservativeStateCreateFlagsEXT(VkPipelineRasterizationConservativeStateCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationConservativeStateCreateFlagsEXT(const VkPipelineRasterizationConservativeStateCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorBindingFlags(VkDescriptorBindingFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorBindingFlags(const VkDescriptorBindingFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkResolveModeFlags(VkResolveModeFlags obj, const std::string& str, bool commaNeeded=true);
-static void print_VkResolveModeFlags(const VkResolveModeFlags * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationDepthClipStateCreateFlagsEXT(VkPipelineRasterizationDepthClipStateCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationDepthClipStateCreateFlagsEXT(const VkPipelineRasterizationDepthClipStateCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubmitFlagsKHR(VkSubmitFlagsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubmitFlagsKHR(const VkSubmitFlagsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkInstance(VkInstance obj, const std::string& str, bool commaNeeded=true);
-static void print_VkInstance(const VkInstance * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevice(VkPhysicalDevice obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevice(const VkPhysicalDevice * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDevice(VkDevice obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDevice(const VkDevice * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueue(VkQueue obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueue(const VkQueue * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBuffer(VkCommandBuffer obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBuffer(const VkCommandBuffer * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceMemory(VkDeviceMemory obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceMemory(const VkDeviceMemory * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPool(VkCommandPool obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPool(const VkCommandPool * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBuffer(VkBuffer obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBuffer(const VkBuffer * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferView(VkBufferView obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferView(const VkBufferView * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImage(VkImage obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImage(const VkImage * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageView(VkImageView obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageView(const VkImageView * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkShaderModule(VkShaderModule obj, const std::string& str, bool commaNeeded=true);
-static void print_VkShaderModule(const VkShaderModule * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipeline(VkPipeline obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipeline(const VkPipeline * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineLayout(VkPipelineLayout obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineLayout(const VkPipelineLayout * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSampler(VkSampler obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSampler(const VkSampler * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSet(VkDescriptorSet obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSet(const VkDescriptorSet * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayout(VkDescriptorSetLayout obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayout(const VkDescriptorSetLayout * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorPool(VkDescriptorPool obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorPool(const VkDescriptorPool * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFence(VkFence obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFence(const VkFence * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphore(VkSemaphore obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphore(const VkSemaphore * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkEvent(VkEvent obj, const std::string& str, bool commaNeeded=true);
-static void print_VkEvent(const VkEvent * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryPool(VkQueryPool obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryPool(const VkQueryPool * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFramebuffer(VkFramebuffer obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFramebuffer(const VkFramebuffer * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPass(VkRenderPass obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPass(const VkRenderPass * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCache(VkPipelineCache obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCache(const VkPipelineCache * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerYcbcrConversion(VkSamplerYcbcrConversion obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerYcbcrConversion(const VkSamplerYcbcrConversion * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayKHR(VkDisplayKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayKHR(const VkDisplayKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayModeKHR(VkDisplayModeKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayModeKHR(const VkDisplayModeKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceKHR(VkSurfaceKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceKHR(const VkSurfaceKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSwapchainKHR(VkSwapchainKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSwapchainKHR(const VkSwapchainKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessengerEXT(VkDebugUtilsMessengerEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessengerEXT(const VkDebugUtilsMessengerEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentLoadOp(VkAttachmentLoadOp obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentLoadOp(const VkAttachmentLoadOp * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentStoreOp(VkAttachmentStoreOp obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentStoreOp(const VkAttachmentStoreOp * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBlendFactor(VkBlendFactor obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBlendFactor(const VkBlendFactor * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBlendOp(VkBlendOp obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBlendOp(const VkBlendOp * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBorderColor(VkBorderColor obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBorderColor(const VkBorderColor * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFramebufferCreateFlagBits(const VkFramebufferCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassCreateFlagBits(const VkRenderPassCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerCreateFlagBits(const VkSamplerCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheHeaderVersion(const VkPipelineCacheHeaderVersion * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheCreateFlagBits(const VkPipelineCacheCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineShaderStageCreateFlagBits(const VkPipelineShaderStageCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayoutCreateFlagBits(const VkDescriptorSetLayoutCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceQueueCreateFlagBits(const VkDeviceQueueCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferCreateFlagBits(VkBufferCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferCreateFlagBits(const VkBufferCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferUsageFlagBits(VkBufferUsageFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferUsageFlagBits(const VkBufferUsageFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkColorComponentFlagBits(VkColorComponentFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkColorComponentFlagBits(const VkColorComponentFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkComponentSwizzle(VkComponentSwizzle obj, const std::string& str, bool commaNeeded=true);
-static void print_VkComponentSwizzle(const VkComponentSwizzle * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolCreateFlagBits(const VkCommandPoolCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolResetFlagBits(const VkCommandPoolResetFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferResetFlagBits(const VkCommandBufferResetFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferLevel(VkCommandBufferLevel obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferLevel(const VkCommandBufferLevel * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferUsageFlagBits(const VkCommandBufferUsageFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCompareOp(VkCompareOp obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCompareOp(const VkCompareOp * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCullModeFlagBits(VkCullModeFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCullModeFlagBits(const VkCullModeFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorType(VkDescriptorType obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorType(const VkDescriptorType * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDynamicState(VkDynamicState obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDynamicState(const VkDynamicState * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFenceCreateFlagBits(VkFenceCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFenceCreateFlagBits(const VkFenceCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPolygonMode(VkPolygonMode obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPolygonMode(const VkPolygonMode * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFormat(VkFormat obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFormat(const VkFormat * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFormatFeatureFlagBits(const VkFormatFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFrontFace(VkFrontFace obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFrontFace(const VkFrontFace * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageAspectFlagBits(VkImageAspectFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageAspectFlagBits(const VkImageAspectFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageCreateFlagBits(VkImageCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageCreateFlagBits(const VkImageCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageLayout(VkImageLayout obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageLayout(const VkImageLayout * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageTiling(VkImageTiling obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageTiling(const VkImageTiling * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageType(VkImageType obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageType(const VkImageType * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageUsageFlagBits(VkImageUsageFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageUsageFlagBits(const VkImageUsageFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageViewCreateFlagBits(const VkImageViewCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageViewType(VkImageViewType obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageViewType(const VkImageViewType * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSharingMode(VkSharingMode obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSharingMode(const VkSharingMode * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkIndexType(VkIndexType obj, const std::string& str, bool commaNeeded=true);
-static void print_VkIndexType(const VkIndexType * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkLogicOp(VkLogicOp obj, const std::string& str, bool commaNeeded=true);
-static void print_VkLogicOp(const VkLogicOp * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryHeapFlagBits(const VkMemoryHeapFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAccessFlagBits(VkAccessFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAccessFlagBits(const VkAccessFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryPropertyFlagBits(const VkMemoryPropertyFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceType(VkPhysicalDeviceType obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceType(const VkPhysicalDeviceType * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineBindPoint(VkPipelineBindPoint obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineBindPoint(const VkPipelineBindPoint * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCreateFlagBits(const VkPipelineCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPrimitiveTopology(VkPrimitiveTopology obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPrimitiveTopology(const VkPrimitiveTopology * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryControlFlagBits(VkQueryControlFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryControlFlagBits(const VkQueryControlFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryPipelineStatisticFlagBits(const VkQueryPipelineStatisticFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryResultFlagBits(VkQueryResultFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryResultFlagBits(const VkQueryResultFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryType(VkQueryType obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryType(const VkQueryType * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueueFlagBits(VkQueueFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueueFlagBits(const VkQueueFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassContents(VkSubpassContents obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassContents(const VkSubpassContents * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkResult(VkResult obj, const std::string& str, bool commaNeeded=true);
-static void print_VkResult(const VkResult * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkShaderStageFlagBits(VkShaderStageFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkShaderStageFlagBits(const VkShaderStageFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkStencilFaceFlagBits(VkStencilFaceFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkStencilFaceFlagBits(const VkStencilFaceFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkStencilOp(VkStencilOp obj, const std::string& str, bool commaNeeded=true);
-static void print_VkStencilOp(const VkStencilOp * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkStructureType(VkStructureType obj, const std::string& str, bool commaNeeded=true);
-static void print_VkStructureType(const VkStructureType * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSystemAllocationScope(VkSystemAllocationScope obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSystemAllocationScope(const VkSystemAllocationScope * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkInternalAllocationType(VkInternalAllocationType obj, const std::string& str, bool commaNeeded=true);
-static void print_VkInternalAllocationType(const VkInternalAllocationType * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerAddressMode(VkSamplerAddressMode obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerAddressMode(const VkSamplerAddressMode * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFilter(VkFilter obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFilter(const VkFilter * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerMipmapMode(VkSamplerMipmapMode obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerMipmapMode(const VkSamplerMipmapMode * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVertexInputRate(VkVertexInputRate obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVertexInputRate(const VkVertexInputRate * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineStageFlagBits(VkPipelineStageFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineStageFlagBits(const VkPipelineStageFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSampleCountFlagBits(VkSampleCountFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSampleCountFlagBits(const VkSampleCountFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentDescriptionFlagBits(const VkAttachmentDescriptionFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorPoolCreateFlagBits(const VkDescriptorPoolCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDependencyFlagBits(VkDependencyFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDependencyFlagBits(const VkDependencyFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkObjectType(VkObjectType obj, const std::string& str, bool commaNeeded=true);
-static void print_VkObjectType(const VkObjectType * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkEventCreateFlagBits(VkEventCreateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkEventCreateFlagBits(const VkEventCreateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDiscardRectangleModeEXT(VkDiscardRectangleModeEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDiscardRectangleModeEXT(const VkDiscardRectangleModeEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDescriptionFlagBits(const VkSubpassDescriptionFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPointClippingBehavior(VkPointClippingBehavior obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPointClippingBehavior(const VkPointClippingBehavior * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueueGlobalPriorityEXT(VkQueueGlobalPriorityEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueueGlobalPriorityEXT(const VkQueueGlobalPriorityEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkTimeDomainEXT(VkTimeDomainEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkTimeDomainEXT(const VkTimeDomainEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkConservativeRasterizationModeEXT(VkConservativeRasterizationModeEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkConservativeRasterizationModeEXT(const VkConservativeRasterizationModeEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkResolveModeFlagBits(VkResolveModeFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkResolveModeFlagBits(const VkResolveModeFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorBindingFlagBits(VkDescriptorBindingFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorBindingFlagBits(const VkDescriptorBindingFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreType(VkSemaphoreType obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreType(const VkSemaphoreType * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterScopeKHR(VkPerformanceCounterScopeKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterScopeKHR(const VkPerformanceCounterScopeKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterUnitKHR(VkPerformanceCounterUnitKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterUnitKHR(const VkPerformanceCounterUnitKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterStorageKHR(VkPerformanceCounterStorageKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterStorageKHR(const VkPerformanceCounterStorageKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterDescriptionFlagBitsKHR(VkPerformanceCounterDescriptionFlagBitsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterDescriptionFlagBitsKHR(const VkPerformanceCounterDescriptionFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAcquireProfilingLockFlagBitsKHR(VkAcquireProfilingLockFlagBitsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAcquireProfilingLockFlagBitsKHR(const VkAcquireProfilingLockFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreWaitFlagBits(VkSemaphoreWaitFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreWaitFlagBits(const VkSemaphoreWaitFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkLineRasterizationModeEXT(VkLineRasterizationModeEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkLineRasterizationModeEXT(const VkLineRasterizationModeEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRefreshObjectFlagBitsKHR(VkRefreshObjectFlagBitsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRefreshObjectFlagBitsKHR(const VkRefreshObjectFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFaultLevel(VkFaultLevel obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFaultLevel(const VkFaultLevel * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFaultType(VkFaultType obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFaultType(const VkFaultType * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFaultQueryBehavior(VkFaultQueryBehavior obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFaultQueryBehavior(const VkFaultQueryBehavior * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineMatchControl(VkPipelineMatchControl obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineMatchControl(const VkPipelineMatchControl * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAccessFlagBits2KHR(VkAccessFlagBits2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAccessFlagBits2KHR(const VkAccessFlagBits2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineStageFlagBits2KHR(VkPipelineStageFlagBits2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineStageFlagBits2KHR(const VkPipelineStageFlagBits2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheValidationVersion(VkPipelineCacheValidationVersion obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheValidationVersion(const VkPipelineCacheValidationVersion * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkColorSpaceKHR(VkColorSpaceKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkColorSpaceKHR(const VkColorSpaceKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCompositeAlphaFlagBitsKHR(VkCompositeAlphaFlagBitsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCompositeAlphaFlagBitsKHR(const VkCompositeAlphaFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlaneAlphaFlagBitsKHR(VkDisplayPlaneAlphaFlagBitsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlaneAlphaFlagBitsKHR(const VkDisplayPlaneAlphaFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPresentModeKHR(VkPresentModeKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPresentModeKHR(const VkPresentModeKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceTransformFlagBitsKHR(VkSurfaceTransformFlagBitsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceTransformFlagBitsKHR(const VkSurfaceTransformFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkValidationFeatureEnableEXT(VkValidationFeatureEnableEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkValidationFeatureEnableEXT(const VkValidationFeatureEnableEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkValidationFeatureDisableEXT(VkValidationFeatureDisableEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkValidationFeatureDisableEXT(const VkValidationFeatureDisableEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryHandleTypeFlagBits(VkExternalMemoryHandleTypeFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryHandleTypeFlagBits(const VkExternalMemoryHandleTypeFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryFeatureFlagBits(VkExternalMemoryFeatureFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryFeatureFlagBits(const VkExternalMemoryFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalSemaphoreHandleTypeFlagBits(VkExternalSemaphoreHandleTypeFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalSemaphoreHandleTypeFlagBits(const VkExternalSemaphoreHandleTypeFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalSemaphoreFeatureFlagBits(VkExternalSemaphoreFeatureFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalSemaphoreFeatureFlagBits(const VkExternalSemaphoreFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreImportFlagBits(VkSemaphoreImportFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreImportFlagBits(const VkSemaphoreImportFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalFenceHandleTypeFlagBits(VkExternalFenceHandleTypeFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalFenceHandleTypeFlagBits(const VkExternalFenceHandleTypeFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalFenceFeatureFlagBits(VkExternalFenceFeatureFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalFenceFeatureFlagBits(const VkExternalFenceFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFenceImportFlagBits(VkFenceImportFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFenceImportFlagBits(const VkFenceImportFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceCounterFlagBitsEXT(VkSurfaceCounterFlagBitsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceCounterFlagBitsEXT(const VkSurfaceCounterFlagBitsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPowerStateEXT(VkDisplayPowerStateEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPowerStateEXT(const VkDisplayPowerStateEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceEventTypeEXT(VkDeviceEventTypeEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceEventTypeEXT(const VkDeviceEventTypeEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayEventTypeEXT(VkDisplayEventTypeEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayEventTypeEXT(const VkDisplayEventTypeEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPeerMemoryFeatureFlagBits(VkPeerMemoryFeatureFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPeerMemoryFeatureFlagBits(const VkPeerMemoryFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryAllocateFlagBits(VkMemoryAllocateFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryAllocateFlagBits(const VkMemoryAllocateFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupPresentModeFlagBitsKHR(VkDeviceGroupPresentModeFlagBitsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupPresentModeFlagBitsKHR(const VkDeviceGroupPresentModeFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSwapchainCreateFlagBitsKHR(VkSwapchainCreateFlagBitsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSwapchainCreateFlagBitsKHR(const VkSwapchainCreateFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubgroupFeatureFlagBits(VkSubgroupFeatureFlagBits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubgroupFeatureFlagBits(const VkSubgroupFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkTessellationDomainOrigin(VkTessellationDomainOrigin obj, const std::string& str, bool commaNeeded=true);
-static void print_VkTessellationDomainOrigin(const VkTessellationDomainOrigin * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerYcbcrModelConversion(VkSamplerYcbcrModelConversion obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerYcbcrModelConversion(const VkSamplerYcbcrModelConversion * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerYcbcrRange(VkSamplerYcbcrRange obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerYcbcrRange(const VkSamplerYcbcrRange * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkChromaLocation(VkChromaLocation obj, const std::string& str, bool commaNeeded=true);
-static void print_VkChromaLocation(const VkChromaLocation * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerReductionMode(VkSamplerReductionMode obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerReductionMode(const VkSamplerReductionMode * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBlendOverlapEXT(VkBlendOverlapEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBlendOverlapEXT(const VkBlendOverlapEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessageSeverityFlagBitsEXT(VkDebugUtilsMessageSeverityFlagBitsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessageSeverityFlagBitsEXT(const VkDebugUtilsMessageSeverityFlagBitsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessageTypeFlagBitsEXT(VkDebugUtilsMessageTypeFlagBitsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessageTypeFlagBitsEXT(const VkDebugUtilsMessageTypeFlagBitsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkShaderFloatControlsIndependence(VkShaderFloatControlsIndependence obj, const std::string& str, bool commaNeeded=true);
-static void print_VkShaderFloatControlsIndependence(const VkShaderFloatControlsIndependence * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFragmentShadingRateCombinerOpKHR(VkFragmentShadingRateCombinerOpKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFragmentShadingRateCombinerOpKHR(const VkFragmentShadingRateCombinerOpKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubmitFlagBitsKHR(VkSubmitFlagBitsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubmitFlagBitsKHR(const VkSubmitFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVendorId(VkVendorId obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVendorId(const VkVendorId * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDriverId(VkDriverId obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDriverId(const VkDriverId * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBaseOutStructure(VkBaseOutStructure obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBaseOutStructure(const VkBaseOutStructure * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBaseInStructure(VkBaseInStructure obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBaseInStructure(const VkBaseInStructure * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkOffset2D(VkOffset2D obj, const std::string& str, bool commaNeeded=true);
-static void print_VkOffset2D(const VkOffset2D * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkOffset3D(VkOffset3D obj, const std::string& str, bool commaNeeded=true);
-static void print_VkOffset3D(const VkOffset3D * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExtent2D(VkExtent2D obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExtent2D(const VkExtent2D * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExtent3D(VkExtent3D obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExtent3D(const VkExtent3D * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkViewport(VkViewport obj, const std::string& str, bool commaNeeded=true);
-static void print_VkViewport(const VkViewport * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRect2D(VkRect2D obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRect2D(const VkRect2D * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkClearRect(VkClearRect obj, const std::string& str, bool commaNeeded=true);
-static void print_VkClearRect(const VkClearRect * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkComponentMapping(VkComponentMapping obj, const std::string& str, bool commaNeeded=true);
-static void print_VkComponentMapping(const VkComponentMapping * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceProperties(VkPhysicalDeviceProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExtensionProperties(VkExtensionProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExtensionProperties(const VkExtensionProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkLayerProperties(VkLayerProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkLayerProperties(const VkLayerProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkApplicationInfo(VkApplicationInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkApplicationInfo(const VkApplicationInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAllocationCallbacks(VkAllocationCallbacks obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAllocationCallbacks(const VkAllocationCallbacks * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceQueueCreateInfo(VkDeviceQueueCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceQueueCreateInfo(const VkDeviceQueueCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceCreateInfo(VkDeviceCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceCreateInfo(const VkDeviceCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkInstanceCreateInfo(VkInstanceCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkInstanceCreateInfo(const VkInstanceCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueueFamilyProperties(VkQueueFamilyProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueueFamilyProperties(const VkQueueFamilyProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceMemoryProperties(VkPhysicalDeviceMemoryProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryAllocateInfo(VkMemoryAllocateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryAllocateInfo(const VkMemoryAllocateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryRequirements(VkMemoryRequirements obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryRequirements(const VkMemoryRequirements * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryType(VkMemoryType obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryType(const VkMemoryType * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryHeap(VkMemoryHeap obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryHeap(const VkMemoryHeap * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMappedMemoryRange(VkMappedMemoryRange obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMappedMemoryRange(const VkMappedMemoryRange * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFormatProperties(VkFormatProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFormatProperties(const VkFormatProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageFormatProperties(VkImageFormatProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageFormatProperties(const VkImageFormatProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorBufferInfo(VkDescriptorBufferInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorBufferInfo(const VkDescriptorBufferInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorImageInfo(VkDescriptorImageInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorImageInfo(const VkDescriptorImageInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkWriteDescriptorSet(VkWriteDescriptorSet obj, const std::string& str, bool commaNeeded=true);
-static void print_VkWriteDescriptorSet(const VkWriteDescriptorSet * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCopyDescriptorSet(VkCopyDescriptorSet obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCopyDescriptorSet(const VkCopyDescriptorSet * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferCreateInfo(VkBufferCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferCreateInfo(const VkBufferCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferViewCreateInfo(VkBufferViewCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferViewCreateInfo(const VkBufferViewCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageSubresource(VkImageSubresource obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageSubresource(const VkImageSubresource * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageSubresourceLayers(VkImageSubresourceLayers obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageSubresourceLayers(const VkImageSubresourceLayers * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageSubresourceRange(VkImageSubresourceRange obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageSubresourceRange(const VkImageSubresourceRange * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryBarrier(VkMemoryBarrier obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryBarrier(const VkMemoryBarrier * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferMemoryBarrier(VkBufferMemoryBarrier obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferMemoryBarrier(const VkBufferMemoryBarrier * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageMemoryBarrier(VkImageMemoryBarrier obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageMemoryBarrier(const VkImageMemoryBarrier * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageCreateInfo(VkImageCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageCreateInfo(const VkImageCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubresourceLayout(VkSubresourceLayout obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubresourceLayout(const VkSubresourceLayout * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageViewCreateInfo(VkImageViewCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageViewCreateInfo(const VkImageViewCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferCopy(VkBufferCopy obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferCopy(const VkBufferCopy * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageCopy(VkImageCopy obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageCopy(const VkImageCopy * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageBlit(VkImageBlit obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageBlit(const VkImageBlit * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferImageCopy(VkBufferImageCopy obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferImageCopy(const VkBufferImageCopy * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageResolve(VkImageResolve obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageResolve(const VkImageResolve * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayoutBinding(VkDescriptorSetLayoutBinding obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayoutBinding(const VkDescriptorSetLayoutBinding * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayoutCreateInfo(VkDescriptorSetLayoutCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayoutCreateInfo(const VkDescriptorSetLayoutCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorPoolSize(VkDescriptorPoolSize obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorPoolSize(const VkDescriptorPoolSize * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorPoolCreateInfo(VkDescriptorPoolCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetAllocateInfo(VkDescriptorSetAllocateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetAllocateInfo(const VkDescriptorSetAllocateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSpecializationMapEntry(VkSpecializationMapEntry obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSpecializationMapEntry(const VkSpecializationMapEntry * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSpecializationInfo(VkSpecializationInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSpecializationInfo(const VkSpecializationInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineShaderStageCreateInfo(VkPipelineShaderStageCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineShaderStageCreateInfo(const VkPipelineShaderStageCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkComputePipelineCreateInfo(VkComputePipelineCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkComputePipelineCreateInfo(const VkComputePipelineCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVertexInputBindingDescription(VkVertexInputBindingDescription obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVertexInputBindingDescription(const VkVertexInputBindingDescription * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVertexInputAttributeDescription(VkVertexInputAttributeDescription obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVertexInputAttributeDescription(const VkVertexInputAttributeDescription * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineVertexInputStateCreateInfo(VkPipelineVertexInputStateCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineVertexInputStateCreateInfo(const VkPipelineVertexInputStateCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineInputAssemblyStateCreateInfo(VkPipelineInputAssemblyStateCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineInputAssemblyStateCreateInfo(const VkPipelineInputAssemblyStateCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineTessellationStateCreateInfo(VkPipelineTessellationStateCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineTessellationStateCreateInfo(const VkPipelineTessellationStateCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineViewportStateCreateInfo(VkPipelineViewportStateCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineViewportStateCreateInfo(const VkPipelineViewportStateCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationStateCreateInfo(VkPipelineRasterizationStateCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationStateCreateInfo(const VkPipelineRasterizationStateCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineMultisampleStateCreateInfo(VkPipelineMultisampleStateCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineMultisampleStateCreateInfo(const VkPipelineMultisampleStateCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineColorBlendAttachmentState(VkPipelineColorBlendAttachmentState obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineColorBlendAttachmentState(const VkPipelineColorBlendAttachmentState * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineColorBlendStateCreateInfo(VkPipelineColorBlendStateCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineColorBlendStateCreateInfo(const VkPipelineColorBlendStateCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineDynamicStateCreateInfo(VkPipelineDynamicStateCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineDynamicStateCreateInfo(const VkPipelineDynamicStateCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkStencilOpState(VkStencilOpState obj, const std::string& str, bool commaNeeded=true);
-static void print_VkStencilOpState(const VkStencilOpState * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineDepthStencilStateCreateInfo(VkPipelineDepthStencilStateCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineDepthStencilStateCreateInfo(const VkPipelineDepthStencilStateCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkGraphicsPipelineCreateInfo(VkGraphicsPipelineCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkGraphicsPipelineCreateInfo(const VkGraphicsPipelineCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheCreateInfo(VkPipelineCacheCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheCreateInfo(const VkPipelineCacheCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheHeaderVersionOne(VkPipelineCacheHeaderVersionOne obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheHeaderVersionOne(const VkPipelineCacheHeaderVersionOne * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheStageValidationIndexEntry(VkPipelineCacheStageValidationIndexEntry obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheStageValidationIndexEntry(const VkPipelineCacheStageValidationIndexEntry * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheSafetyCriticalIndexEntry(VkPipelineCacheSafetyCriticalIndexEntry obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheSafetyCriticalIndexEntry(const VkPipelineCacheSafetyCriticalIndexEntry * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheHeaderVersionSafetyCriticalOne(VkPipelineCacheHeaderVersionSafetyCriticalOne obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineCacheHeaderVersionSafetyCriticalOne(const VkPipelineCacheHeaderVersionSafetyCriticalOne * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPushConstantRange(VkPushConstantRange obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPushConstantRange(const VkPushConstantRange * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineLayoutCreateInfo(VkPipelineLayoutCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerCreateInfo(VkSamplerCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerCreateInfo(const VkSamplerCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolCreateInfo(VkCommandPoolCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolCreateInfo(const VkCommandPoolCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferAllocateInfo(VkCommandBufferAllocateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferAllocateInfo(const VkCommandBufferAllocateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferInheritanceInfo(VkCommandBufferInheritanceInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferInheritanceInfo(const VkCommandBufferInheritanceInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferBeginInfo(VkCommandBufferBeginInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferBeginInfo(const VkCommandBufferBeginInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassBeginInfo(VkRenderPassBeginInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassBeginInfo(const VkRenderPassBeginInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkClearDepthStencilValue(VkClearDepthStencilValue obj, const std::string& str, bool commaNeeded=true);
-static void print_VkClearDepthStencilValue(const VkClearDepthStencilValue * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkClearAttachment(VkClearAttachment obj, const std::string& str, bool commaNeeded=true);
-static void print_VkClearAttachment(const VkClearAttachment * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentDescription(VkAttachmentDescription obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentDescription(const VkAttachmentDescription * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentReference(VkAttachmentReference obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentReference(const VkAttachmentReference * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDescription(VkSubpassDescription obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDescription(const VkSubpassDescription * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDependency(VkSubpassDependency obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDependency(const VkSubpassDependency * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassCreateInfo(VkRenderPassCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassCreateInfo(const VkRenderPassCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkEventCreateInfo(VkEventCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkEventCreateInfo(const VkEventCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFenceCreateInfo(VkFenceCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFenceCreateInfo(const VkFenceCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFeatures(VkPhysicalDeviceFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFeatures(const VkPhysicalDeviceFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSparseProperties(VkPhysicalDeviceSparseProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSparseProperties(const VkPhysicalDeviceSparseProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreCreateInfo(VkSemaphoreCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreCreateInfo(const VkSemaphoreCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryPoolCreateInfo(VkQueryPoolCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryPoolCreateInfo(const VkQueryPoolCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFramebufferCreateInfo(VkFramebufferCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFramebufferCreateInfo(const VkFramebufferCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDrawIndirectCommand(VkDrawIndirectCommand obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDrawIndirectCommand(const VkDrawIndirectCommand * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDrawIndexedIndirectCommand(VkDrawIndexedIndirectCommand obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDrawIndexedIndirectCommand(const VkDrawIndexedIndirectCommand * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDispatchIndirectCommand(VkDispatchIndirectCommand obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDispatchIndirectCommand(const VkDispatchIndirectCommand * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubmitInfo(VkSubmitInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubmitInfo(const VkSubmitInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPropertiesKHR(VkDisplayPropertiesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPropertiesKHR(const VkDisplayPropertiesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlanePropertiesKHR(VkDisplayPlanePropertiesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlanePropertiesKHR(const VkDisplayPlanePropertiesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayModeParametersKHR(VkDisplayModeParametersKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayModeParametersKHR(const VkDisplayModeParametersKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayModePropertiesKHR(VkDisplayModePropertiesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayModePropertiesKHR(const VkDisplayModePropertiesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayModeCreateInfoKHR(VkDisplayModeCreateInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayModeCreateInfoKHR(const VkDisplayModeCreateInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlaneCapabilitiesKHR(VkDisplayPlaneCapabilitiesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlaneCapabilitiesKHR(const VkDisplayPlaneCapabilitiesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplaySurfaceCreateInfoKHR(VkDisplaySurfaceCreateInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplaySurfaceCreateInfoKHR(const VkDisplaySurfaceCreateInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPresentInfoKHR(VkDisplayPresentInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPresentInfoKHR(const VkDisplayPresentInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceCapabilitiesKHR(VkSurfaceCapabilitiesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceCapabilitiesKHR(const VkSurfaceCapabilitiesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceFormatKHR(VkSurfaceFormatKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceFormatKHR(const VkSurfaceFormatKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSwapchainCreateInfoKHR(VkSwapchainCreateInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSwapchainCreateInfoKHR(const VkSwapchainCreateInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPresentInfoKHR(VkPresentInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPresentInfoKHR(const VkPresentInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkValidationFeaturesEXT(VkValidationFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkValidationFeaturesEXT(const VkValidationFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFeatures2(VkPhysicalDeviceFeatures2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFeatures2(const VkPhysicalDeviceFeatures2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceProperties2(VkPhysicalDeviceProperties2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceProperties2(const VkPhysicalDeviceProperties2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFormatProperties2(VkFormatProperties2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFormatProperties2(const VkFormatProperties2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageFormatProperties2(VkImageFormatProperties2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageFormatProperties2(const VkImageFormatProperties2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceImageFormatInfo2(VkPhysicalDeviceImageFormatInfo2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceImageFormatInfo2(const VkPhysicalDeviceImageFormatInfo2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueueFamilyProperties2(VkQueueFamilyProperties2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueueFamilyProperties2(const VkQueueFamilyProperties2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceMemoryProperties2(VkPhysicalDeviceMemoryProperties2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceMemoryProperties2(const VkPhysicalDeviceMemoryProperties2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkConformanceVersion(VkConformanceVersion obj, const std::string& str, bool commaNeeded=true);
-static void print_VkConformanceVersion(const VkConformanceVersion * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceDriverProperties(VkPhysicalDeviceDriverProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceDriverProperties(const VkPhysicalDeviceDriverProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPresentRegionsKHR(VkPresentRegionsKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPresentRegionsKHR(const VkPresentRegionsKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPresentRegionKHR(VkPresentRegionKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPresentRegionKHR(const VkPresentRegionKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRectLayerKHR(VkRectLayerKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRectLayerKHR(const VkRectLayerKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVariablePointersFeatures(VkPhysicalDeviceVariablePointersFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVariablePointersFeatures(const VkPhysicalDeviceVariablePointersFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVariablePointerFeatures(VkPhysicalDeviceVariablePointerFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVariablePointerFeatures(const VkPhysicalDeviceVariablePointerFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryProperties(VkExternalMemoryProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryProperties(const VkExternalMemoryProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExternalImageFormatInfo(VkPhysicalDeviceExternalImageFormatInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExternalImageFormatInfo(const VkPhysicalDeviceExternalImageFormatInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalImageFormatProperties(VkExternalImageFormatProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalImageFormatProperties(const VkExternalImageFormatProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExternalBufferInfo(VkPhysicalDeviceExternalBufferInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExternalBufferInfo(const VkPhysicalDeviceExternalBufferInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalBufferProperties(VkExternalBufferProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalBufferProperties(const VkExternalBufferProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceIDProperties(VkPhysicalDeviceIDProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceIDProperties(const VkPhysicalDeviceIDProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryImageCreateInfo(VkExternalMemoryImageCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryImageCreateInfo(const VkExternalMemoryImageCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryBufferCreateInfo(VkExternalMemoryBufferCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalMemoryBufferCreateInfo(const VkExternalMemoryBufferCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExportMemoryAllocateInfo(VkExportMemoryAllocateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExportMemoryAllocateInfo(const VkExportMemoryAllocateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImportMemoryFdInfoKHR(VkImportMemoryFdInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImportMemoryFdInfoKHR(const VkImportMemoryFdInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryFdPropertiesKHR(VkMemoryFdPropertiesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryFdPropertiesKHR(const VkMemoryFdPropertiesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryGetFdInfoKHR(VkMemoryGetFdInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryGetFdInfoKHR(const VkMemoryGetFdInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExternalSemaphoreInfo(VkPhysicalDeviceExternalSemaphoreInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExternalSemaphoreInfo(const VkPhysicalDeviceExternalSemaphoreInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalSemaphoreProperties(VkExternalSemaphoreProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalSemaphoreProperties(const VkExternalSemaphoreProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExportSemaphoreCreateInfo(VkExportSemaphoreCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExportSemaphoreCreateInfo(const VkExportSemaphoreCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImportSemaphoreFdInfoKHR(VkImportSemaphoreFdInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImportSemaphoreFdInfoKHR(const VkImportSemaphoreFdInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreGetFdInfoKHR(VkSemaphoreGetFdInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreGetFdInfoKHR(const VkSemaphoreGetFdInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExternalFenceInfo(VkPhysicalDeviceExternalFenceInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExternalFenceInfo(const VkPhysicalDeviceExternalFenceInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalFenceProperties(VkExternalFenceProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExternalFenceProperties(const VkExternalFenceProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExportFenceCreateInfo(VkExportFenceCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkExportFenceCreateInfo(const VkExportFenceCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImportFenceFdInfoKHR(VkImportFenceFdInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImportFenceFdInfoKHR(const VkImportFenceFdInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFenceGetFdInfoKHR(VkFenceGetFdInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFenceGetFdInfoKHR(const VkFenceGetFdInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceMultiviewFeatures(VkPhysicalDeviceMultiviewFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceMultiviewFeatures(const VkPhysicalDeviceMultiviewFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceMultiviewProperties(VkPhysicalDeviceMultiviewProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceMultiviewProperties(const VkPhysicalDeviceMultiviewProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassMultiviewCreateInfo(VkRenderPassMultiviewCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassMultiviewCreateInfo(const VkRenderPassMultiviewCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceCapabilities2EXT(VkSurfaceCapabilities2EXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceCapabilities2EXT(const VkSurfaceCapabilities2EXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPowerInfoEXT(VkDisplayPowerInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPowerInfoEXT(const VkDisplayPowerInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceEventInfoEXT(VkDeviceEventInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceEventInfoEXT(const VkDeviceEventInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayEventInfoEXT(VkDisplayEventInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayEventInfoEXT(const VkDisplayEventInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSwapchainCounterCreateInfoEXT(VkSwapchainCounterCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSwapchainCounterCreateInfoEXT(const VkSwapchainCounterCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceGroupProperties(VkPhysicalDeviceGroupProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceGroupProperties(const VkPhysicalDeviceGroupProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryAllocateFlagsInfo(VkMemoryAllocateFlagsInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryAllocateFlagsInfo(const VkMemoryAllocateFlagsInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBindBufferMemoryInfo(VkBindBufferMemoryInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBindBufferMemoryInfo(const VkBindBufferMemoryInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBindBufferMemoryDeviceGroupInfo(VkBindBufferMemoryDeviceGroupInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBindBufferMemoryDeviceGroupInfo(const VkBindBufferMemoryDeviceGroupInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBindImageMemoryInfo(VkBindImageMemoryInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBindImageMemoryInfo(const VkBindImageMemoryInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBindImageMemoryDeviceGroupInfo(VkBindImageMemoryDeviceGroupInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBindImageMemoryDeviceGroupInfo(const VkBindImageMemoryDeviceGroupInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupRenderPassBeginInfo(VkDeviceGroupRenderPassBeginInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupRenderPassBeginInfo(const VkDeviceGroupRenderPassBeginInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupCommandBufferBeginInfo(VkDeviceGroupCommandBufferBeginInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupCommandBufferBeginInfo(const VkDeviceGroupCommandBufferBeginInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupSubmitInfo(VkDeviceGroupSubmitInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupSubmitInfo(const VkDeviceGroupSubmitInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupPresentCapabilitiesKHR(VkDeviceGroupPresentCapabilitiesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupPresentCapabilitiesKHR(const VkDeviceGroupPresentCapabilitiesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageSwapchainCreateInfoKHR(VkImageSwapchainCreateInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageSwapchainCreateInfoKHR(const VkImageSwapchainCreateInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBindImageMemorySwapchainInfoKHR(VkBindImageMemorySwapchainInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBindImageMemorySwapchainInfoKHR(const VkBindImageMemorySwapchainInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAcquireNextImageInfoKHR(VkAcquireNextImageInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAcquireNextImageInfoKHR(const VkAcquireNextImageInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupPresentInfoKHR(VkDeviceGroupPresentInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupPresentInfoKHR(const VkDeviceGroupPresentInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupDeviceCreateInfo(VkDeviceGroupDeviceCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupDeviceCreateInfo(const VkDeviceGroupDeviceCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupSwapchainCreateInfoKHR(VkDeviceGroupSwapchainCreateInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceGroupSwapchainCreateInfoKHR(const VkDeviceGroupSwapchainCreateInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkXYColorEXT(VkXYColorEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkXYColorEXT(const VkXYColorEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkHdrMetadataEXT(VkHdrMetadataEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkHdrMetadataEXT(const VkHdrMetadataEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceDiscardRectanglePropertiesEXT(VkPhysicalDeviceDiscardRectanglePropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceDiscardRectanglePropertiesEXT(const VkPhysicalDeviceDiscardRectanglePropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineDiscardRectangleStateCreateInfoEXT(VkPipelineDiscardRectangleStateCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineDiscardRectangleStateCreateInfoEXT(const VkPipelineDiscardRectangleStateCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkInputAttachmentAspectReference(VkInputAttachmentAspectReference obj, const std::string& str, bool commaNeeded=true);
-static void print_VkInputAttachmentAspectReference(const VkInputAttachmentAspectReference * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassInputAttachmentAspectCreateInfo(VkRenderPassInputAttachmentAspectCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassInputAttachmentAspectCreateInfo(const VkRenderPassInputAttachmentAspectCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSurfaceInfo2KHR(VkPhysicalDeviceSurfaceInfo2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSurfaceInfo2KHR(const VkPhysicalDeviceSurfaceInfo2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceCapabilities2KHR(VkSurfaceCapabilities2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceCapabilities2KHR(const VkSurfaceCapabilities2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceFormat2KHR(VkSurfaceFormat2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSurfaceFormat2KHR(const VkSurfaceFormat2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayProperties2KHR(VkDisplayProperties2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayProperties2KHR(const VkDisplayProperties2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlaneProperties2KHR(VkDisplayPlaneProperties2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlaneProperties2KHR(const VkDisplayPlaneProperties2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayModeProperties2KHR(VkDisplayModeProperties2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayModeProperties2KHR(const VkDisplayModeProperties2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlaneInfo2KHR(VkDisplayPlaneInfo2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlaneInfo2KHR(const VkDisplayPlaneInfo2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlaneCapabilities2KHR(VkDisplayPlaneCapabilities2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDisplayPlaneCapabilities2KHR(const VkDisplayPlaneCapabilities2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSharedPresentSurfaceCapabilitiesKHR(VkSharedPresentSurfaceCapabilitiesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSharedPresentSurfaceCapabilitiesKHR(const VkSharedPresentSurfaceCapabilitiesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevice16BitStorageFeatures(VkPhysicalDevice16BitStorageFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevice16BitStorageFeatures(const VkPhysicalDevice16BitStorageFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSubgroupProperties(VkPhysicalDeviceSubgroupProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSubgroupProperties(const VkPhysicalDeviceSubgroupProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferMemoryRequirementsInfo2(VkBufferMemoryRequirementsInfo2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferMemoryRequirementsInfo2(const VkBufferMemoryRequirementsInfo2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageMemoryRequirementsInfo2(VkImageMemoryRequirementsInfo2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageMemoryRequirementsInfo2(const VkImageMemoryRequirementsInfo2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryRequirements2(VkMemoryRequirements2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryRequirements2(const VkMemoryRequirements2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevicePointClippingProperties(VkPhysicalDevicePointClippingProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevicePointClippingProperties(const VkPhysicalDevicePointClippingProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryDedicatedRequirements(VkMemoryDedicatedRequirements obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryDedicatedRequirements(const VkMemoryDedicatedRequirements * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryDedicatedAllocateInfo(VkMemoryDedicatedAllocateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryDedicatedAllocateInfo(const VkMemoryDedicatedAllocateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageViewUsageCreateInfo(VkImageViewUsageCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageViewUsageCreateInfo(const VkImageViewUsageCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineTessellationDomainOriginStateCreateInfo(VkPipelineTessellationDomainOriginStateCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineTessellationDomainOriginStateCreateInfo(const VkPipelineTessellationDomainOriginStateCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerYcbcrConversionInfo(VkSamplerYcbcrConversionInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerYcbcrConversionInfo(const VkSamplerYcbcrConversionInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerYcbcrConversionCreateInfo(VkSamplerYcbcrConversionCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerYcbcrConversionCreateInfo(const VkSamplerYcbcrConversionCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBindImagePlaneMemoryInfo(VkBindImagePlaneMemoryInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBindImagePlaneMemoryInfo(const VkBindImagePlaneMemoryInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImagePlaneMemoryRequirementsInfo(VkImagePlaneMemoryRequirementsInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImagePlaneMemoryRequirementsInfo(const VkImagePlaneMemoryRequirementsInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSamplerYcbcrConversionFeatures(VkPhysicalDeviceSamplerYcbcrConversionFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSamplerYcbcrConversionFeatures(const VkPhysicalDeviceSamplerYcbcrConversionFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerYcbcrConversionImageFormatProperties(VkSamplerYcbcrConversionImageFormatProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerYcbcrConversionImageFormatProperties(const VkSamplerYcbcrConversionImageFormatProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkProtectedSubmitInfo(VkProtectedSubmitInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkProtectedSubmitInfo(const VkProtectedSubmitInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceProtectedMemoryFeatures(VkPhysicalDeviceProtectedMemoryFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceProtectedMemoryFeatures(const VkPhysicalDeviceProtectedMemoryFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceProtectedMemoryProperties(VkPhysicalDeviceProtectedMemoryProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceProtectedMemoryProperties(const VkPhysicalDeviceProtectedMemoryProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceQueueInfo2(VkDeviceQueueInfo2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceQueueInfo2(const VkDeviceQueueInfo2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSamplerFilterMinmaxProperties(VkPhysicalDeviceSamplerFilterMinmaxProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSamplerFilterMinmaxProperties(const VkPhysicalDeviceSamplerFilterMinmaxProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSampleLocationEXT(VkSampleLocationEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSampleLocationEXT(const VkSampleLocationEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSampleLocationsInfoEXT(VkSampleLocationsInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSampleLocationsInfoEXT(const VkSampleLocationsInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentSampleLocationsEXT(VkAttachmentSampleLocationsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentSampleLocationsEXT(const VkAttachmentSampleLocationsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassSampleLocationsEXT(VkSubpassSampleLocationsEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassSampleLocationsEXT(const VkSubpassSampleLocationsEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassSampleLocationsBeginInfoEXT(VkRenderPassSampleLocationsBeginInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassSampleLocationsBeginInfoEXT(const VkRenderPassSampleLocationsBeginInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineSampleLocationsStateCreateInfoEXT(VkPipelineSampleLocationsStateCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineSampleLocationsStateCreateInfoEXT(const VkPipelineSampleLocationsStateCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSampleLocationsPropertiesEXT(VkPhysicalDeviceSampleLocationsPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSampleLocationsPropertiesEXT(const VkPhysicalDeviceSampleLocationsPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMultisamplePropertiesEXT(VkMultisamplePropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMultisamplePropertiesEXT(const VkMultisamplePropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerReductionModeCreateInfo(VkSamplerReductionModeCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerReductionModeCreateInfo(const VkSamplerReductionModeCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineColorBlendAdvancedStateCreateInfoEXT(VkPipelineColorBlendAdvancedStateCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineColorBlendAdvancedStateCreateInfoEXT(const VkPipelineColorBlendAdvancedStateCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageFormatListCreateInfo(VkImageFormatListCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageFormatListCreateInfo(const VkImageFormatListCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceMaintenance3Properties(VkPhysicalDeviceMaintenance3Properties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceMaintenance3Properties(const VkPhysicalDeviceMaintenance3Properties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayoutSupport(VkDescriptorSetLayoutSupport obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayoutSupport(const VkDescriptorSetLayoutSupport * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderDrawParametersFeatures(VkPhysicalDeviceShaderDrawParametersFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderDrawParametersFeatures(const VkPhysicalDeviceShaderDrawParametersFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderDrawParameterFeatures(VkPhysicalDeviceShaderDrawParameterFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderDrawParameterFeatures(const VkPhysicalDeviceShaderDrawParameterFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderFloat16Int8Features(VkPhysicalDeviceShaderFloat16Int8Features obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderFloat16Int8Features(const VkPhysicalDeviceShaderFloat16Int8Features * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFloatControlsProperties(VkPhysicalDeviceFloatControlsProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFloatControlsProperties(const VkPhysicalDeviceFloatControlsProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceHostQueryResetFeatures(VkPhysicalDeviceHostQueryResetFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceHostQueryResetFeatures(const VkPhysicalDeviceHostQueryResetFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceQueueGlobalPriorityCreateInfoEXT(VkDeviceQueueGlobalPriorityCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceQueueGlobalPriorityCreateInfoEXT(const VkDeviceQueueGlobalPriorityCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsObjectNameInfoEXT(VkDebugUtilsObjectNameInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsObjectNameInfoEXT(const VkDebugUtilsObjectNameInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsObjectTagInfoEXT(VkDebugUtilsObjectTagInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsObjectTagInfoEXT(const VkDebugUtilsObjectTagInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsLabelEXT(VkDebugUtilsLabelEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsLabelEXT(const VkDebugUtilsLabelEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessengerCreateInfoEXT(VkDebugUtilsMessengerCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessengerCreateInfoEXT(const VkDebugUtilsMessengerCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessengerCallbackDataEXT(VkDebugUtilsMessengerCallbackDataEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDebugUtilsMessengerCallbackDataEXT(const VkDebugUtilsMessengerCallbackDataEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImportMemoryHostPointerInfoEXT(VkImportMemoryHostPointerInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImportMemoryHostPointerInfoEXT(const VkImportMemoryHostPointerInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryHostPointerPropertiesEXT(VkMemoryHostPointerPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryHostPointerPropertiesEXT(const VkMemoryHostPointerPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(VkPhysicalDeviceExternalMemoryHostPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(const VkPhysicalDeviceExternalMemoryHostPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(VkPhysicalDeviceConservativeRasterizationPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(const VkPhysicalDeviceConservativeRasterizationPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCalibratedTimestampInfoEXT(VkCalibratedTimestampInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCalibratedTimestampInfoEXT(const VkCalibratedTimestampInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationConservativeStateCreateInfoEXT(VkPipelineRasterizationConservativeStateCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationConservativeStateCreateInfoEXT(const VkPipelineRasterizationConservativeStateCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceDescriptorIndexingFeatures(VkPhysicalDeviceDescriptorIndexingFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceDescriptorIndexingFeatures(const VkPhysicalDeviceDescriptorIndexingFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceDescriptorIndexingProperties(VkPhysicalDeviceDescriptorIndexingProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceDescriptorIndexingProperties(const VkPhysicalDeviceDescriptorIndexingProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayoutBindingFlagsCreateInfo(VkDescriptorSetLayoutBindingFlagsCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetLayoutBindingFlagsCreateInfo(const VkDescriptorSetLayoutBindingFlagsCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetVariableDescriptorCountAllocateInfo(VkDescriptorSetVariableDescriptorCountAllocateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetVariableDescriptorCountAllocateInfo(const VkDescriptorSetVariableDescriptorCountAllocateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetVariableDescriptorCountLayoutSupport(VkDescriptorSetVariableDescriptorCountLayoutSupport obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDescriptorSetVariableDescriptorCountLayoutSupport(const VkDescriptorSetVariableDescriptorCountLayoutSupport * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentDescription2(VkAttachmentDescription2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentDescription2(const VkAttachmentDescription2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentReference2(VkAttachmentReference2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentReference2(const VkAttachmentReference2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDescription2(VkSubpassDescription2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDescription2(const VkSubpassDescription2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDependency2(VkSubpassDependency2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDependency2(const VkSubpassDependency2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassCreateInfo2(VkRenderPassCreateInfo2 obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassCreateInfo2(const VkRenderPassCreateInfo2 * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassBeginInfo(VkSubpassBeginInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassBeginInfo(const VkSubpassBeginInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassEndInfo(VkSubpassEndInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassEndInfo(const VkSubpassEndInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceTimelineSemaphoreFeatures(VkPhysicalDeviceTimelineSemaphoreFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceTimelineSemaphoreFeatures(const VkPhysicalDeviceTimelineSemaphoreFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceTimelineSemaphoreProperties(VkPhysicalDeviceTimelineSemaphoreProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceTimelineSemaphoreProperties(const VkPhysicalDeviceTimelineSemaphoreProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreTypeCreateInfo(VkSemaphoreTypeCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreTypeCreateInfo(const VkSemaphoreTypeCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkTimelineSemaphoreSubmitInfo(VkTimelineSemaphoreSubmitInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkTimelineSemaphoreSubmitInfo(const VkTimelineSemaphoreSubmitInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreWaitInfo(VkSemaphoreWaitInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreWaitInfo(const VkSemaphoreWaitInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreSignalInfo(VkSemaphoreSignalInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreSignalInfo(const VkSemaphoreSignalInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVertexInputBindingDivisorDescriptionEXT(VkVertexInputBindingDivisorDescriptionEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVertexInputBindingDivisorDescriptionEXT(const VkVertexInputBindingDivisorDescriptionEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineVertexInputDivisorStateCreateInfoEXT(VkPipelineVertexInputDivisorStateCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineVertexInputDivisorStateCreateInfoEXT(const VkPipelineVertexInputDivisorStateCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevicePCIBusInfoPropertiesEXT(VkPhysicalDevicePCIBusInfoPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevicePCIBusInfoPropertiesEXT(const VkPhysicalDevicePCIBusInfoPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevice8BitStorageFeatures(VkPhysicalDevice8BitStorageFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevice8BitStorageFeatures(const VkPhysicalDevice8BitStorageFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkanMemoryModelFeatures(VkPhysicalDeviceVulkanMemoryModelFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkanMemoryModelFeatures(const VkPhysicalDeviceVulkanMemoryModelFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderAtomicInt64Features(VkPhysicalDeviceShaderAtomicInt64Features obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderAtomicInt64Features(const VkPhysicalDeviceShaderAtomicInt64Features * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(VkPhysicalDeviceShaderAtomicFloatFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceDepthStencilResolveProperties(VkPhysicalDeviceDepthStencilResolveProperties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceDepthStencilResolveProperties(const VkPhysicalDeviceDepthStencilResolveProperties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDescriptionDepthStencilResolve(VkSubpassDescriptionDepthStencilResolve obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubpassDescriptionDepthStencilResolve(const VkSubpassDescriptionDepthStencilResolve * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageViewASTCDecodeModeEXT(VkImageViewASTCDecodeModeEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageViewASTCDecodeModeEXT(const VkImageViewASTCDecodeModeEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceASTCDecodeFeaturesEXT(VkPhysicalDeviceASTCDecodeFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceASTCDecodeFeaturesEXT(const VkPhysicalDeviceASTCDecodeFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDrmFormatModifierPropertiesListEXT(VkDrmFormatModifierPropertiesListEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDrmFormatModifierPropertiesListEXT(const VkDrmFormatModifierPropertiesListEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDrmFormatModifierPropertiesEXT(VkDrmFormatModifierPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDrmFormatModifierPropertiesEXT(const VkDrmFormatModifierPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(VkPhysicalDeviceImageDrmFormatModifierInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(const VkPhysicalDeviceImageDrmFormatModifierInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageDrmFormatModifierListCreateInfoEXT(VkImageDrmFormatModifierListCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageDrmFormatModifierListCreateInfoEXT(const VkImageDrmFormatModifierListCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageDrmFormatModifierExplicitCreateInfoEXT(VkImageDrmFormatModifierExplicitCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageDrmFormatModifierExplicitCreateInfoEXT(const VkImageDrmFormatModifierExplicitCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageDrmFormatModifierPropertiesEXT(VkImageDrmFormatModifierPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageDrmFormatModifierPropertiesEXT(const VkImageDrmFormatModifierPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageStencilUsageCreateInfo(VkImageStencilUsageCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageStencilUsageCreateInfo(const VkImageStencilUsageCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceScalarBlockLayoutFeatures(VkPhysicalDeviceScalarBlockLayoutFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceScalarBlockLayoutFeatures(const VkPhysicalDeviceScalarBlockLayoutFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(VkPhysicalDeviceUniformBufferStandardLayoutFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(const VkPhysicalDeviceUniformBufferStandardLayoutFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceDepthClipEnableFeaturesEXT(VkPhysicalDeviceDepthClipEnableFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceDepthClipEnableFeaturesEXT(const VkPhysicalDeviceDepthClipEnableFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationDepthClipStateCreateInfoEXT(VkPipelineRasterizationDepthClipStateCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationDepthClipStateCreateInfoEXT(const VkPipelineRasterizationDepthClipStateCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(VkPhysicalDeviceMemoryBudgetPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(const VkPhysicalDeviceMemoryBudgetPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceBufferDeviceAddressFeatures(VkPhysicalDeviceBufferDeviceAddressFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceBufferDeviceAddressFeatures(const VkPhysicalDeviceBufferDeviceAddressFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferDeviceAddressInfo(VkBufferDeviceAddressInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferDeviceAddressInfo(const VkBufferDeviceAddressInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferOpaqueCaptureAddressCreateInfo(VkBufferOpaqueCaptureAddressCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferOpaqueCaptureAddressCreateInfo(const VkBufferOpaqueCaptureAddressCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceImageViewImageFormatInfoEXT(VkPhysicalDeviceImageViewImageFormatInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceImageViewImageFormatInfoEXT(const VkPhysicalDeviceImageViewImageFormatInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFilterCubicImageViewImageFormatPropertiesEXT(VkFilterCubicImageViewImageFormatPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFilterCubicImageViewImageFormatPropertiesEXT(const VkFilterCubicImageViewImageFormatPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceImagelessFramebufferFeatures(VkPhysicalDeviceImagelessFramebufferFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceImagelessFramebufferFeatures(const VkPhysicalDeviceImagelessFramebufferFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFramebufferAttachmentsCreateInfo(VkFramebufferAttachmentsCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFramebufferAttachmentsCreateInfo(const VkFramebufferAttachmentsCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFramebufferAttachmentImageInfo(VkFramebufferAttachmentImageInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFramebufferAttachmentImageInfo(const VkFramebufferAttachmentImageInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassAttachmentBeginInfo(VkRenderPassAttachmentBeginInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRenderPassAttachmentBeginInfo(const VkRenderPassAttachmentBeginInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(const VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevicePerformanceQueryFeaturesKHR(VkPhysicalDevicePerformanceQueryFeaturesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevicePerformanceQueryFeaturesKHR(const VkPhysicalDevicePerformanceQueryFeaturesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevicePerformanceQueryPropertiesKHR(VkPhysicalDevicePerformanceQueryPropertiesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevicePerformanceQueryPropertiesKHR(const VkPhysicalDevicePerformanceQueryPropertiesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterKHR(VkPerformanceCounterKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterKHR(const VkPerformanceCounterKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterDescriptionKHR(VkPerformanceCounterDescriptionKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceCounterDescriptionKHR(const VkPerformanceCounterDescriptionKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryPoolPerformanceCreateInfoKHR(VkQueryPoolPerformanceCreateInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueryPoolPerformanceCreateInfoKHR(const VkQueryPoolPerformanceCreateInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAcquireProfilingLockInfoKHR(VkAcquireProfilingLockInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAcquireProfilingLockInfoKHR(const VkAcquireProfilingLockInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceQuerySubmitInfoKHR(VkPerformanceQuerySubmitInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceQuerySubmitInfoKHR(const VkPerformanceQuerySubmitInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceQueryReservationInfoKHR(VkPerformanceQueryReservationInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPerformanceQueryReservationInfoKHR(const VkPerformanceQueryReservationInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkHeadlessSurfaceCreateInfoEXT(VkHeadlessSurfaceCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkHeadlessSurfaceCreateInfoEXT(const VkHeadlessSurfaceCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderClockFeaturesKHR(VkPhysicalDeviceShaderClockFeaturesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderClockFeaturesKHR(const VkPhysicalDeviceShaderClockFeaturesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(VkPhysicalDeviceIndexTypeUint8FeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(const VkPhysicalDeviceIndexTypeUint8FeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentReferenceStencilLayout(VkAttachmentReferenceStencilLayout obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentReferenceStencilLayout(const VkAttachmentReferenceStencilLayout * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentDescriptionStencilLayout(VkAttachmentDescriptionStencilLayout obj, const std::string& str, bool commaNeeded=true);
-static void print_VkAttachmentDescriptionStencilLayout(const VkAttachmentDescriptionStencilLayout * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(const VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(const VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(VkPhysicalDeviceSubgroupSizeControlFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(const VkPhysicalDeviceSubgroupSizeControlFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(VkPhysicalDeviceSubgroupSizeControlPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(const VkPhysicalDeviceSubgroupSizeControlPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(const VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryOpaqueCaptureAddressAllocateInfo(VkMemoryOpaqueCaptureAddressAllocateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryOpaqueCaptureAddressAllocateInfo(const VkMemoryOpaqueCaptureAddressAllocateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceMemoryOpaqueCaptureAddressInfo(VkDeviceMemoryOpaqueCaptureAddressInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceMemoryOpaqueCaptureAddressInfo(const VkDeviceMemoryOpaqueCaptureAddressInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceLineRasterizationFeaturesEXT(VkPhysicalDeviceLineRasterizationFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceLineRasterizationFeaturesEXT(const VkPhysicalDeviceLineRasterizationFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceLineRasterizationPropertiesEXT(VkPhysicalDeviceLineRasterizationPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceLineRasterizationPropertiesEXT(const VkPhysicalDeviceLineRasterizationPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationLineStateCreateInfoEXT(VkPipelineRasterizationLineStateCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineRasterizationLineStateCreateInfoEXT(const VkPipelineRasterizationLineStateCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkan11Features(VkPhysicalDeviceVulkan11Features obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkan11Features(const VkPhysicalDeviceVulkan11Features * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkan11Properties(VkPhysicalDeviceVulkan11Properties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkan11Properties(const VkPhysicalDeviceVulkan11Properties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkan12Features(VkPhysicalDeviceVulkan12Features obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkan12Features(const VkPhysicalDeviceVulkan12Features * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkan12Properties(VkPhysicalDeviceVulkan12Properties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkan12Properties(const VkPhysicalDeviceVulkan12Properties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFaultData(VkFaultData obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFaultData(const VkFaultData * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFaultCallbackInfo(VkFaultCallbackInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFaultCallbackInfo(const VkFaultCallbackInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerCustomBorderColorCreateInfoEXT(VkSamplerCustomBorderColorCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSamplerCustomBorderColorCreateInfoEXT(const VkSamplerCustomBorderColorCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceCustomBorderColorPropertiesEXT(VkPhysicalDeviceCustomBorderColorPropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceCustomBorderColorPropertiesEXT(const VkPhysicalDeviceCustomBorderColorPropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceCustomBorderColorFeaturesEXT(VkPhysicalDeviceCustomBorderColorFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceCustomBorderColorFeaturesEXT(const VkPhysicalDeviceCustomBorderColorFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRefreshObjectKHR(VkRefreshObjectKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRefreshObjectKHR(const VkRefreshObjectKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRefreshObjectListKHR(VkRefreshObjectListKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkRefreshObjectListKHR(const VkRefreshObjectListKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineOfflineCreateInfo(VkPipelineOfflineCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineOfflineCreateInfo(const VkPipelineOfflineCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceRobustness2FeaturesEXT(VkPhysicalDeviceRobustness2FeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceRobustness2FeaturesEXT(const VkPhysicalDeviceRobustness2FeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceRobustness2PropertiesEXT(VkPhysicalDeviceRobustness2PropertiesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceRobustness2PropertiesEXT(const VkPhysicalDeviceRobustness2PropertiesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceImageRobustnessFeaturesEXT(VkPhysicalDeviceImageRobustnessFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceImageRobustnessFeaturesEXT(const VkPhysicalDeviceImageRobustnessFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevice4444FormatsFeaturesEXT(VkPhysicalDevice4444FormatsFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDevice4444FormatsFeaturesEXT(const VkPhysicalDevice4444FormatsFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferCopy2KHR(VkBufferCopy2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferCopy2KHR(const VkBufferCopy2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageCopy2KHR(VkImageCopy2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageCopy2KHR(const VkImageCopy2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageBlit2KHR(VkImageBlit2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageBlit2KHR(const VkImageBlit2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferImageCopy2KHR(VkBufferImageCopy2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferImageCopy2KHR(const VkBufferImageCopy2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageResolve2KHR(VkImageResolve2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageResolve2KHR(const VkImageResolve2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCopyBufferInfo2KHR(VkCopyBufferInfo2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCopyBufferInfo2KHR(const VkCopyBufferInfo2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCopyImageInfo2KHR(VkCopyImageInfo2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCopyImageInfo2KHR(const VkCopyImageInfo2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBlitImageInfo2KHR(VkBlitImageInfo2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBlitImageInfo2KHR(const VkBlitImageInfo2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCopyBufferToImageInfo2KHR(VkCopyBufferToImageInfo2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCopyBufferToImageInfo2KHR(const VkCopyBufferToImageInfo2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCopyImageToBufferInfo2KHR(VkCopyImageToBufferInfo2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCopyImageToBufferInfo2KHR(const VkCopyImageToBufferInfo2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkResolveImageInfo2KHR(VkResolveImageInfo2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkResolveImageInfo2KHR(const VkResolveImageInfo2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFragmentShadingRateAttachmentInfoKHR(VkFragmentShadingRateAttachmentInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkFragmentShadingRateAttachmentInfoKHR(const VkFragmentShadingRateAttachmentInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineFragmentShadingRateStateCreateInfoKHR(VkPipelineFragmentShadingRateStateCreateInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineFragmentShadingRateStateCreateInfoKHR(const VkPipelineFragmentShadingRateStateCreateInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(VkPhysicalDeviceFragmentShadingRateFeaturesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(const VkPhysicalDeviceFragmentShadingRateFeaturesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(VkPhysicalDeviceFragmentShadingRatePropertiesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(const VkPhysicalDeviceFragmentShadingRatePropertiesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFragmentShadingRateKHR(VkPhysicalDeviceFragmentShadingRateKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceFragmentShadingRateKHR(const VkPhysicalDeviceFragmentShadingRateKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR(VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR(const VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVertexInputBindingDescription2EXT(VkVertexInputBindingDescription2EXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVertexInputBindingDescription2EXT(const VkVertexInputBindingDescription2EXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVertexInputAttributeDescription2EXT(VkVertexInputAttributeDescription2EXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkVertexInputAttributeDescription2EXT(const VkVertexInputAttributeDescription2EXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceColorWriteEnableFeaturesEXT(VkPhysicalDeviceColorWriteEnableFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceColorWriteEnableFeaturesEXT(const VkPhysicalDeviceColorWriteEnableFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineColorWriteCreateInfoEXT(VkPipelineColorWriteCreateInfoEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelineColorWriteCreateInfoEXT(const VkPipelineColorWriteCreateInfoEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryBarrier2KHR(VkMemoryBarrier2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkMemoryBarrier2KHR(const VkMemoryBarrier2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageMemoryBarrier2KHR(VkImageMemoryBarrier2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkImageMemoryBarrier2KHR(const VkImageMemoryBarrier2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferMemoryBarrier2KHR(VkBufferMemoryBarrier2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkBufferMemoryBarrier2KHR(const VkBufferMemoryBarrier2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDependencyInfoKHR(VkDependencyInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDependencyInfoKHR(const VkDependencyInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreSubmitInfoKHR(VkSemaphoreSubmitInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSemaphoreSubmitInfoKHR(const VkSemaphoreSubmitInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferSubmitInfoKHR(VkCommandBufferSubmitInfoKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandBufferSubmitInfoKHR(const VkCommandBufferSubmitInfoKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubmitInfo2KHR(VkSubmitInfo2KHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkSubmitInfo2KHR(const VkSubmitInfo2KHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueueFamilyCheckpointProperties2NV(VkQueueFamilyCheckpointProperties2NV obj, const std::string& str, bool commaNeeded=true);
-static void print_VkQueueFamilyCheckpointProperties2NV(const VkQueueFamilyCheckpointProperties2NV * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCheckpointData2NV(VkCheckpointData2NV obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCheckpointData2NV(const VkCheckpointData2NV * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSynchronization2FeaturesKHR(VkPhysicalDeviceSynchronization2FeaturesKHR obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceSynchronization2FeaturesKHR(const VkPhysicalDeviceSynchronization2FeaturesKHR * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkanSC10Properties(VkPhysicalDeviceVulkanSC10Properties obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkanSC10Properties(const VkPhysicalDeviceVulkanSC10Properties * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelinePoolSize(VkPipelinePoolSize obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPipelinePoolSize(const VkPipelinePoolSize * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceObjectReservationCreateInfo(VkDeviceObjectReservationCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDeviceObjectReservationCreateInfo(const VkDeviceObjectReservationCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolMemoryReservationCreateInfo(VkCommandPoolMemoryReservationCreateInfo obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolMemoryReservationCreateInfo(const VkCommandPoolMemoryReservationCreateInfo * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolMemoryConsumption(VkCommandPoolMemoryConsumption obj, const std::string& str, bool commaNeeded=true);
-static void print_VkCommandPoolMemoryConsumption(const VkCommandPoolMemoryConsumption * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkanSC10Features(VkPhysicalDeviceVulkanSC10Features obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceVulkanSC10Features(const VkPhysicalDeviceVulkanSC10Features * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDrmFormatModifierPropertiesList2EXT(VkDrmFormatModifierPropertiesList2EXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDrmFormatModifierPropertiesList2EXT(const VkDrmFormatModifierPropertiesList2EXT * obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDrmFormatModifierProperties2EXT(VkDrmFormatModifierProperties2EXT obj, const std::string& str, bool commaNeeded=true);
-static void print_VkDrmFormatModifierProperties2EXT(const VkDrmFormatModifierProperties2EXT * obj, const std::string& str, bool commaNeeded=true);
-/*************************************** End prototypes ***********************************/
-
-static void dumpPNextChain(const void* pNext) {
-      VkBaseInStructure *pBase = (VkBaseInStructure*)pNext;
-      if (pNext) {
-           PRINT_SPACE
-           _OUT << "\"pNext\":"<< std::endl;
-
-          switch (pBase->sType) {
-             case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR:print_VkDisplayPresentInfoKHR((VkDisplayPresentInfoKHR *) pNext, "VkDisplayPresentInfoKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT:print_VkValidationFeaturesEXT((VkValidationFeaturesEXT *) pNext, "VkValidationFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2:print_VkPhysicalDeviceFeatures2((VkPhysicalDeviceFeatures2 *) pNext, "VkPhysicalDeviceFeatures2", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES:print_VkPhysicalDeviceDriverProperties((VkPhysicalDeviceDriverProperties *) pNext, "VkPhysicalDeviceDriverProperties", true);
-             break;
-             case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR:print_VkPresentRegionsKHR((VkPresentRegionsKHR *) pNext, "VkPresentRegionsKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES:print_VkPhysicalDeviceVariablePointersFeatures((VkPhysicalDeviceVariablePointersFeatures *) pNext, "VkPhysicalDeviceVariablePointersFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO:print_VkPhysicalDeviceExternalImageFormatInfo((VkPhysicalDeviceExternalImageFormatInfo *) pNext, "VkPhysicalDeviceExternalImageFormatInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES:print_VkExternalImageFormatProperties((VkExternalImageFormatProperties *) pNext, "VkExternalImageFormatProperties", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES:print_VkPhysicalDeviceIDProperties((VkPhysicalDeviceIDProperties *) pNext, "VkPhysicalDeviceIDProperties", true);
-             break;
-             case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO:print_VkExternalMemoryImageCreateInfo((VkExternalMemoryImageCreateInfo *) pNext, "VkExternalMemoryImageCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO:print_VkExternalMemoryBufferCreateInfo((VkExternalMemoryBufferCreateInfo *) pNext, "VkExternalMemoryBufferCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO:print_VkExportMemoryAllocateInfo((VkExportMemoryAllocateInfo *) pNext, "VkExportMemoryAllocateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR:print_VkImportMemoryFdInfoKHR((VkImportMemoryFdInfoKHR *) pNext, "VkImportMemoryFdInfoKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO:print_VkExportSemaphoreCreateInfo((VkExportSemaphoreCreateInfo *) pNext, "VkExportSemaphoreCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO:print_VkExportFenceCreateInfo((VkExportFenceCreateInfo *) pNext, "VkExportFenceCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES:print_VkPhysicalDeviceMultiviewFeatures((VkPhysicalDeviceMultiviewFeatures *) pNext, "VkPhysicalDeviceMultiviewFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES:print_VkPhysicalDeviceMultiviewProperties((VkPhysicalDeviceMultiviewProperties *) pNext, "VkPhysicalDeviceMultiviewProperties", true);
-             break;
-             case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO:print_VkRenderPassMultiviewCreateInfo((VkRenderPassMultiviewCreateInfo *) pNext, "VkRenderPassMultiviewCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT:print_VkSwapchainCounterCreateInfoEXT((VkSwapchainCounterCreateInfoEXT *) pNext, "VkSwapchainCounterCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO:print_VkMemoryAllocateFlagsInfo((VkMemoryAllocateFlagsInfo *) pNext, "VkMemoryAllocateFlagsInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO:print_VkBindBufferMemoryDeviceGroupInfo((VkBindBufferMemoryDeviceGroupInfo *) pNext, "VkBindBufferMemoryDeviceGroupInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO:print_VkBindImageMemoryDeviceGroupInfo((VkBindImageMemoryDeviceGroupInfo *) pNext, "VkBindImageMemoryDeviceGroupInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO:print_VkDeviceGroupRenderPassBeginInfo((VkDeviceGroupRenderPassBeginInfo *) pNext, "VkDeviceGroupRenderPassBeginInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO:print_VkDeviceGroupCommandBufferBeginInfo((VkDeviceGroupCommandBufferBeginInfo *) pNext, "VkDeviceGroupCommandBufferBeginInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO:print_VkDeviceGroupSubmitInfo((VkDeviceGroupSubmitInfo *) pNext, "VkDeviceGroupSubmitInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR:print_VkImageSwapchainCreateInfoKHR((VkImageSwapchainCreateInfoKHR *) pNext, "VkImageSwapchainCreateInfoKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR:print_VkBindImageMemorySwapchainInfoKHR((VkBindImageMemorySwapchainInfoKHR *) pNext, "VkBindImageMemorySwapchainInfoKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR:print_VkDeviceGroupPresentInfoKHR((VkDeviceGroupPresentInfoKHR *) pNext, "VkDeviceGroupPresentInfoKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO:print_VkDeviceGroupDeviceCreateInfo((VkDeviceGroupDeviceCreateInfo *) pNext, "VkDeviceGroupDeviceCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR:print_VkDeviceGroupSwapchainCreateInfoKHR((VkDeviceGroupSwapchainCreateInfoKHR *) pNext, "VkDeviceGroupSwapchainCreateInfoKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT:print_VkPhysicalDeviceDiscardRectanglePropertiesEXT((VkPhysicalDeviceDiscardRectanglePropertiesEXT *) pNext, "VkPhysicalDeviceDiscardRectanglePropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT:print_VkPipelineDiscardRectangleStateCreateInfoEXT((VkPipelineDiscardRectangleStateCreateInfoEXT *) pNext, "VkPipelineDiscardRectangleStateCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO:print_VkRenderPassInputAttachmentAspectCreateInfo((VkRenderPassInputAttachmentAspectCreateInfo *) pNext, "VkRenderPassInputAttachmentAspectCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR:print_VkSharedPresentSurfaceCapabilitiesKHR((VkSharedPresentSurfaceCapabilitiesKHR *) pNext, "VkSharedPresentSurfaceCapabilitiesKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES:print_VkPhysicalDevice16BitStorageFeatures((VkPhysicalDevice16BitStorageFeatures *) pNext, "VkPhysicalDevice16BitStorageFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES:print_VkPhysicalDeviceSubgroupProperties((VkPhysicalDeviceSubgroupProperties *) pNext, "VkPhysicalDeviceSubgroupProperties", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES:print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures((VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures *) pNext, "VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES:print_VkPhysicalDevicePointClippingProperties((VkPhysicalDevicePointClippingProperties *) pNext, "VkPhysicalDevicePointClippingProperties", true);
-             break;
-             case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS:print_VkMemoryDedicatedRequirements((VkMemoryDedicatedRequirements *) pNext, "VkMemoryDedicatedRequirements", true);
-             break;
-             case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO:print_VkMemoryDedicatedAllocateInfo((VkMemoryDedicatedAllocateInfo *) pNext, "VkMemoryDedicatedAllocateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO:print_VkImageViewUsageCreateInfo((VkImageViewUsageCreateInfo *) pNext, "VkImageViewUsageCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO:print_VkPipelineTessellationDomainOriginStateCreateInfo((VkPipelineTessellationDomainOriginStateCreateInfo *) pNext, "VkPipelineTessellationDomainOriginStateCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO:print_VkSamplerYcbcrConversionInfo((VkSamplerYcbcrConversionInfo *) pNext, "VkSamplerYcbcrConversionInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO:print_VkBindImagePlaneMemoryInfo((VkBindImagePlaneMemoryInfo *) pNext, "VkBindImagePlaneMemoryInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO:print_VkImagePlaneMemoryRequirementsInfo((VkImagePlaneMemoryRequirementsInfo *) pNext, "VkImagePlaneMemoryRequirementsInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES:print_VkPhysicalDeviceSamplerYcbcrConversionFeatures((VkPhysicalDeviceSamplerYcbcrConversionFeatures *) pNext, "VkPhysicalDeviceSamplerYcbcrConversionFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES:print_VkSamplerYcbcrConversionImageFormatProperties((VkSamplerYcbcrConversionImageFormatProperties *) pNext, "VkSamplerYcbcrConversionImageFormatProperties", true);
-             break;
-             case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO:print_VkProtectedSubmitInfo((VkProtectedSubmitInfo *) pNext, "VkProtectedSubmitInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES:print_VkPhysicalDeviceProtectedMemoryFeatures((VkPhysicalDeviceProtectedMemoryFeatures *) pNext, "VkPhysicalDeviceProtectedMemoryFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES:print_VkPhysicalDeviceProtectedMemoryProperties((VkPhysicalDeviceProtectedMemoryProperties *) pNext, "VkPhysicalDeviceProtectedMemoryProperties", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES:print_VkPhysicalDeviceSamplerFilterMinmaxProperties((VkPhysicalDeviceSamplerFilterMinmaxProperties *) pNext, "VkPhysicalDeviceSamplerFilterMinmaxProperties", true);
-             break;
-             case VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT:print_VkSampleLocationsInfoEXT((VkSampleLocationsInfoEXT *) pNext, "VkSampleLocationsInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT:print_VkRenderPassSampleLocationsBeginInfoEXT((VkRenderPassSampleLocationsBeginInfoEXT *) pNext, "VkRenderPassSampleLocationsBeginInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT:print_VkPipelineSampleLocationsStateCreateInfoEXT((VkPipelineSampleLocationsStateCreateInfoEXT *) pNext, "VkPipelineSampleLocationsStateCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT:print_VkPhysicalDeviceSampleLocationsPropertiesEXT((VkPhysicalDeviceSampleLocationsPropertiesEXT *) pNext, "VkPhysicalDeviceSampleLocationsPropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO:print_VkSamplerReductionModeCreateInfo((VkSamplerReductionModeCreateInfo *) pNext, "VkSamplerReductionModeCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT:print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT((VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT *) pNext, "VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT:print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT((VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT *) pNext, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT:print_VkPipelineColorBlendAdvancedStateCreateInfoEXT((VkPipelineColorBlendAdvancedStateCreateInfoEXT *) pNext, "VkPipelineColorBlendAdvancedStateCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO:print_VkImageFormatListCreateInfo((VkImageFormatListCreateInfo *) pNext, "VkImageFormatListCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES:print_VkPhysicalDeviceMaintenance3Properties((VkPhysicalDeviceMaintenance3Properties *) pNext, "VkPhysicalDeviceMaintenance3Properties", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES:print_VkPhysicalDeviceShaderDrawParametersFeatures((VkPhysicalDeviceShaderDrawParametersFeatures *) pNext, "VkPhysicalDeviceShaderDrawParametersFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES:print_VkPhysicalDeviceShaderFloat16Int8Features((VkPhysicalDeviceShaderFloat16Int8Features *) pNext, "VkPhysicalDeviceShaderFloat16Int8Features", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES:print_VkPhysicalDeviceFloatControlsProperties((VkPhysicalDeviceFloatControlsProperties *) pNext, "VkPhysicalDeviceFloatControlsProperties", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES:print_VkPhysicalDeviceHostQueryResetFeatures((VkPhysicalDeviceHostQueryResetFeatures *) pNext, "VkPhysicalDeviceHostQueryResetFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT:print_VkDeviceQueueGlobalPriorityCreateInfoEXT((VkDeviceQueueGlobalPriorityCreateInfoEXT *) pNext, "VkDeviceQueueGlobalPriorityCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT:print_VkDebugUtilsMessengerCreateInfoEXT((VkDebugUtilsMessengerCreateInfoEXT *) pNext, "VkDebugUtilsMessengerCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT:print_VkImportMemoryHostPointerInfoEXT((VkImportMemoryHostPointerInfoEXT *) pNext, "VkImportMemoryHostPointerInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT:print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT((VkPhysicalDeviceExternalMemoryHostPropertiesEXT *) pNext, "VkPhysicalDeviceExternalMemoryHostPropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT:print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT((VkPhysicalDeviceConservativeRasterizationPropertiesEXT *) pNext, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT:print_VkPipelineRasterizationConservativeStateCreateInfoEXT((VkPipelineRasterizationConservativeStateCreateInfoEXT *) pNext, "VkPipelineRasterizationConservativeStateCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES:print_VkPhysicalDeviceDescriptorIndexingFeatures((VkPhysicalDeviceDescriptorIndexingFeatures *) pNext, "VkPhysicalDeviceDescriptorIndexingFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES:print_VkPhysicalDeviceDescriptorIndexingProperties((VkPhysicalDeviceDescriptorIndexingProperties *) pNext, "VkPhysicalDeviceDescriptorIndexingProperties", true);
-             break;
-             case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO:print_VkDescriptorSetLayoutBindingFlagsCreateInfo((VkDescriptorSetLayoutBindingFlagsCreateInfo *) pNext, "VkDescriptorSetLayoutBindingFlagsCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO:print_VkDescriptorSetVariableDescriptorCountAllocateInfo((VkDescriptorSetVariableDescriptorCountAllocateInfo *) pNext, "VkDescriptorSetVariableDescriptorCountAllocateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT:print_VkDescriptorSetVariableDescriptorCountLayoutSupport((VkDescriptorSetVariableDescriptorCountLayoutSupport *) pNext, "VkDescriptorSetVariableDescriptorCountLayoutSupport", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES:print_VkPhysicalDeviceTimelineSemaphoreFeatures((VkPhysicalDeviceTimelineSemaphoreFeatures *) pNext, "VkPhysicalDeviceTimelineSemaphoreFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES:print_VkPhysicalDeviceTimelineSemaphoreProperties((VkPhysicalDeviceTimelineSemaphoreProperties *) pNext, "VkPhysicalDeviceTimelineSemaphoreProperties", true);
-             break;
-             case VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO:print_VkSemaphoreTypeCreateInfo((VkSemaphoreTypeCreateInfo *) pNext, "VkSemaphoreTypeCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO:print_VkTimelineSemaphoreSubmitInfo((VkTimelineSemaphoreSubmitInfo *) pNext, "VkTimelineSemaphoreSubmitInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT:print_VkPipelineVertexInputDivisorStateCreateInfoEXT((VkPipelineVertexInputDivisorStateCreateInfoEXT *) pNext, "VkPipelineVertexInputDivisorStateCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT:print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT((VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT *) pNext, "VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT:print_VkPhysicalDevicePCIBusInfoPropertiesEXT((VkPhysicalDevicePCIBusInfoPropertiesEXT *) pNext, "VkPhysicalDevicePCIBusInfoPropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES:print_VkPhysicalDevice8BitStorageFeatures((VkPhysicalDevice8BitStorageFeatures *) pNext, "VkPhysicalDevice8BitStorageFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES:print_VkPhysicalDeviceVulkanMemoryModelFeatures((VkPhysicalDeviceVulkanMemoryModelFeatures *) pNext, "VkPhysicalDeviceVulkanMemoryModelFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES:print_VkPhysicalDeviceShaderAtomicInt64Features((VkPhysicalDeviceShaderAtomicInt64Features *) pNext, "VkPhysicalDeviceShaderAtomicInt64Features", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT:print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT((VkPhysicalDeviceShaderAtomicFloatFeaturesEXT *) pNext, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT:print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT((VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT *) pNext, "VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES:print_VkPhysicalDeviceDepthStencilResolveProperties((VkPhysicalDeviceDepthStencilResolveProperties *) pNext, "VkPhysicalDeviceDepthStencilResolveProperties", true);
-             break;
-             case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE:print_VkSubpassDescriptionDepthStencilResolve((VkSubpassDescriptionDepthStencilResolve *) pNext, "VkSubpassDescriptionDepthStencilResolve", true);
-             break;
-             case VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT:print_VkImageViewASTCDecodeModeEXT((VkImageViewASTCDecodeModeEXT *) pNext, "VkImageViewASTCDecodeModeEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT:print_VkPhysicalDeviceASTCDecodeFeaturesEXT((VkPhysicalDeviceASTCDecodeFeaturesEXT *) pNext, "VkPhysicalDeviceASTCDecodeFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT:print_VkDrmFormatModifierPropertiesListEXT((VkDrmFormatModifierPropertiesListEXT *) pNext, "VkDrmFormatModifierPropertiesListEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT:print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT((VkPhysicalDeviceImageDrmFormatModifierInfoEXT *) pNext, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT:print_VkImageDrmFormatModifierListCreateInfoEXT((VkImageDrmFormatModifierListCreateInfoEXT *) pNext, "VkImageDrmFormatModifierListCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT:print_VkImageDrmFormatModifierExplicitCreateInfoEXT((VkImageDrmFormatModifierExplicitCreateInfoEXT *) pNext, "VkImageDrmFormatModifierExplicitCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO:print_VkImageStencilUsageCreateInfo((VkImageStencilUsageCreateInfo *) pNext, "VkImageStencilUsageCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES:print_VkPhysicalDeviceScalarBlockLayoutFeatures((VkPhysicalDeviceScalarBlockLayoutFeatures *) pNext, "VkPhysicalDeviceScalarBlockLayoutFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES:print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures((VkPhysicalDeviceUniformBufferStandardLayoutFeatures *) pNext, "VkPhysicalDeviceUniformBufferStandardLayoutFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT:print_VkPhysicalDeviceDepthClipEnableFeaturesEXT((VkPhysicalDeviceDepthClipEnableFeaturesEXT *) pNext, "VkPhysicalDeviceDepthClipEnableFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT:print_VkPipelineRasterizationDepthClipStateCreateInfoEXT((VkPipelineRasterizationDepthClipStateCreateInfoEXT *) pNext, "VkPipelineRasterizationDepthClipStateCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT:print_VkPhysicalDeviceMemoryBudgetPropertiesEXT((VkPhysicalDeviceMemoryBudgetPropertiesEXT *) pNext, "VkPhysicalDeviceMemoryBudgetPropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES:print_VkPhysicalDeviceBufferDeviceAddressFeatures((VkPhysicalDeviceBufferDeviceAddressFeatures *) pNext, "VkPhysicalDeviceBufferDeviceAddressFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO:print_VkBufferOpaqueCaptureAddressCreateInfo((VkBufferOpaqueCaptureAddressCreateInfo *) pNext, "VkBufferOpaqueCaptureAddressCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT:print_VkPhysicalDeviceImageViewImageFormatInfoEXT((VkPhysicalDeviceImageViewImageFormatInfoEXT *) pNext, "VkPhysicalDeviceImageViewImageFormatInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT:print_VkFilterCubicImageViewImageFormatPropertiesEXT((VkFilterCubicImageViewImageFormatPropertiesEXT *) pNext, "VkFilterCubicImageViewImageFormatPropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES:print_VkPhysicalDeviceImagelessFramebufferFeatures((VkPhysicalDeviceImagelessFramebufferFeatures *) pNext, "VkPhysicalDeviceImagelessFramebufferFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO:print_VkFramebufferAttachmentsCreateInfo((VkFramebufferAttachmentsCreateInfo *) pNext, "VkFramebufferAttachmentsCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO:print_VkRenderPassAttachmentBeginInfo((VkRenderPassAttachmentBeginInfo *) pNext, "VkRenderPassAttachmentBeginInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT:print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT((VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT *) pNext, "VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT:print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT((VkPhysicalDeviceYcbcrImageArraysFeaturesEXT *) pNext, "VkPhysicalDeviceYcbcrImageArraysFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR:print_VkPhysicalDevicePerformanceQueryFeaturesKHR((VkPhysicalDevicePerformanceQueryFeaturesKHR *) pNext, "VkPhysicalDevicePerformanceQueryFeaturesKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR:print_VkPhysicalDevicePerformanceQueryPropertiesKHR((VkPhysicalDevicePerformanceQueryPropertiesKHR *) pNext, "VkPhysicalDevicePerformanceQueryPropertiesKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR:print_VkQueryPoolPerformanceCreateInfoKHR((VkQueryPoolPerformanceCreateInfoKHR *) pNext, "VkQueryPoolPerformanceCreateInfoKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR:print_VkPerformanceQuerySubmitInfoKHR((VkPerformanceQuerySubmitInfoKHR *) pNext, "VkPerformanceQuerySubmitInfoKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_RESERVATION_INFO_KHR:print_VkPerformanceQueryReservationInfoKHR((VkPerformanceQueryReservationInfoKHR *) pNext, "VkPerformanceQueryReservationInfoKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR:print_VkPhysicalDeviceShaderClockFeaturesKHR((VkPhysicalDeviceShaderClockFeaturesKHR *) pNext, "VkPhysicalDeviceShaderClockFeaturesKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT:print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT((VkPhysicalDeviceIndexTypeUint8FeaturesEXT *) pNext, "VkPhysicalDeviceIndexTypeUint8FeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT:print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT((VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT *) pNext, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES:print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures((VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures *) pNext, "VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures", true);
-             break;
-             case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT:print_VkAttachmentReferenceStencilLayout((VkAttachmentReferenceStencilLayout *) pNext, "VkAttachmentReferenceStencilLayout", true);
-             break;
-             case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT:print_VkAttachmentDescriptionStencilLayout((VkAttachmentDescriptionStencilLayout *) pNext, "VkAttachmentDescriptionStencilLayout", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT((VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT *) pNext, "VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT((VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT *) pNext, "VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT:print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT((VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT *) pNext, "VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT:print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT((VkPhysicalDeviceSubgroupSizeControlFeaturesEXT *) pNext, "VkPhysicalDeviceSubgroupSizeControlFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT:print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT((VkPhysicalDeviceSubgroupSizeControlPropertiesEXT *) pNext, "VkPhysicalDeviceSubgroupSizeControlPropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT:print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT((VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT *) pNext, "VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO:print_VkMemoryOpaqueCaptureAddressAllocateInfo((VkMemoryOpaqueCaptureAddressAllocateInfo *) pNext, "VkMemoryOpaqueCaptureAddressAllocateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT:print_VkPhysicalDeviceLineRasterizationFeaturesEXT((VkPhysicalDeviceLineRasterizationFeaturesEXT *) pNext, "VkPhysicalDeviceLineRasterizationFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT:print_VkPhysicalDeviceLineRasterizationPropertiesEXT((VkPhysicalDeviceLineRasterizationPropertiesEXT *) pNext, "VkPhysicalDeviceLineRasterizationPropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT:print_VkPipelineRasterizationLineStateCreateInfoEXT((VkPipelineRasterizationLineStateCreateInfoEXT *) pNext, "VkPipelineRasterizationLineStateCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES:print_VkPhysicalDeviceVulkan11Features((VkPhysicalDeviceVulkan11Features *) pNext, "VkPhysicalDeviceVulkan11Features", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES:print_VkPhysicalDeviceVulkan11Properties((VkPhysicalDeviceVulkan11Properties *) pNext, "VkPhysicalDeviceVulkan11Properties", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES:print_VkPhysicalDeviceVulkan12Features((VkPhysicalDeviceVulkan12Features *) pNext, "VkPhysicalDeviceVulkan12Features", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES:print_VkPhysicalDeviceVulkan12Properties((VkPhysicalDeviceVulkan12Properties *) pNext, "VkPhysicalDeviceVulkan12Properties", true);
-             break;
-             case VK_STRUCTURE_TYPE_FAULT_CALLBACK_INFO:print_VkFaultCallbackInfo((VkFaultCallbackInfo *) pNext, "VkFaultCallbackInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT:print_VkSamplerCustomBorderColorCreateInfoEXT((VkSamplerCustomBorderColorCreateInfoEXT *) pNext, "VkSamplerCustomBorderColorCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT:print_VkPhysicalDeviceCustomBorderColorPropertiesEXT((VkPhysicalDeviceCustomBorderColorPropertiesEXT *) pNext, "VkPhysicalDeviceCustomBorderColorPropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT:print_VkPhysicalDeviceCustomBorderColorFeaturesEXT((VkPhysicalDeviceCustomBorderColorFeaturesEXT *) pNext, "VkPhysicalDeviceCustomBorderColorFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT:print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT((VkPhysicalDeviceExtendedDynamicStateFeaturesEXT *) pNext, "VkPhysicalDeviceExtendedDynamicStateFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT((VkPhysicalDeviceExtendedDynamicState2FeaturesEXT *) pNext, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PIPELINE_OFFLINE_CREATE_INFO:print_VkPipelineOfflineCreateInfo((VkPipelineOfflineCreateInfo *) pNext, "VkPipelineOfflineCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT:print_VkPhysicalDeviceRobustness2FeaturesEXT((VkPhysicalDeviceRobustness2FeaturesEXT *) pNext, "VkPhysicalDeviceRobustness2FeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT:print_VkPhysicalDeviceRobustness2PropertiesEXT((VkPhysicalDeviceRobustness2PropertiesEXT *) pNext, "VkPhysicalDeviceRobustness2PropertiesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT:print_VkPhysicalDeviceImageRobustnessFeaturesEXT((VkPhysicalDeviceImageRobustnessFeaturesEXT *) pNext, "VkPhysicalDeviceImageRobustnessFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT:print_VkPhysicalDevice4444FormatsFeaturesEXT((VkPhysicalDevice4444FormatsFeaturesEXT *) pNext, "VkPhysicalDevice4444FormatsFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT:print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT((VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT *) pNext, "VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:print_VkFragmentShadingRateAttachmentInfoKHR((VkFragmentShadingRateAttachmentInfoKHR *) pNext, "VkFragmentShadingRateAttachmentInfoKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR:print_VkPipelineFragmentShadingRateStateCreateInfoKHR((VkPipelineFragmentShadingRateStateCreateInfoKHR *) pNext, "VkPipelineFragmentShadingRateStateCreateInfoKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR:print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR((VkPhysicalDeviceFragmentShadingRateFeaturesKHR *) pNext, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR:print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR((VkPhysicalDeviceFragmentShadingRatePropertiesKHR *) pNext, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR:print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR((VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR *) pNext, "VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT((VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT *) pNext, "VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:print_VkPhysicalDeviceColorWriteEnableFeaturesEXT((VkPhysicalDeviceColorWriteEnableFeaturesEXT *) pNext, "VkPhysicalDeviceColorWriteEnableFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:print_VkPipelineColorWriteCreateInfoEXT((VkPipelineColorWriteCreateInfoEXT *) pNext, "VkPipelineColorWriteCreateInfoEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:print_VkMemoryBarrier2KHR((VkMemoryBarrier2KHR *) pNext, "VkMemoryBarrier2KHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:print_VkQueueFamilyCheckpointProperties2NV((VkQueueFamilyCheckpointProperties2NV *) pNext, "VkQueueFamilyCheckpointProperties2NV", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:print_VkPhysicalDeviceSynchronization2FeaturesKHR((VkPhysicalDeviceSynchronization2FeaturesKHR *) pNext, "VkPhysicalDeviceSynchronization2FeaturesKHR", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_PROPERTIES:print_VkPhysicalDeviceVulkanSC10Properties((VkPhysicalDeviceVulkanSC10Properties *) pNext, "VkPhysicalDeviceVulkanSC10Properties", true);
-             break;
-             case VK_STRUCTURE_TYPE_DEVICE_OBJECT_RESERVATION_CREATE_INFO:print_VkDeviceObjectReservationCreateInfo((VkDeviceObjectReservationCreateInfo *) pNext, "VkDeviceObjectReservationCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_RESERVATION_CREATE_INFO:print_VkCommandPoolMemoryReservationCreateInfo((VkCommandPoolMemoryReservationCreateInfo *) pNext, "VkCommandPoolMemoryReservationCreateInfo", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_FEATURES:print_VkPhysicalDeviceVulkanSC10Features((VkPhysicalDeviceVulkanSC10Features *) pNext, "VkPhysicalDeviceVulkanSC10Features", true);
-             break;
-             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT((VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT *) pNext, "VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT", true);
-             break;
-             case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:print_VkDrmFormatModifierPropertiesList2EXT((VkDrmFormatModifierPropertiesList2EXT *) pNext, "VkDrmFormatModifierPropertiesList2EXT", true);
-             break;
-             default: assert(false);
-         }
-     }
-  }
-
-static void print_VkBool32(VkBool32 obj, const std::string& str, bool commaNeeded) {
+static void print_VkBool32(VkBool32 obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "\"" << str << "\"" << " : " << "\"" << ((obj == 0) ? ("VK_FALSE") : ("VK_TRUE")) << "\"" << (commaNeeded ? "," : "") << std::endl;
 }
-static void print_VkBool32(const VkBool32 * obj, const std::string& str, bool commaNeeded) {
+static void print_VkBool32(const VkBool32 * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "\"" << str << "\"" << " : " << "\"" << ((obj == 0) ? ("VK_FALSE") : ("VK_TRUE")) << "\"" << (commaNeeded ? "," : "") << std::endl;
 }
 
-static void print_VkDeviceAddress(VkDeviceAddress obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceAddress(VkDeviceAddress obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
 }
-static void print_VkDeviceAddress(const VkDeviceAddress * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceAddress(const VkDeviceAddress * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
 }
 
-static void print_VkDeviceSize(VkDeviceSize obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceSize(VkDeviceSize obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
 }
-static void print_VkDeviceSize(const VkDeviceSize * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceSize(const VkDeviceSize * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
 }
 
-static void print_VkFlags(VkFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkFlags(VkFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
 }
-static void print_VkFlags(const VkFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFlags(const VkFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
 }
 
-static void print_VkSampleMask(VkSampleMask obj, const std::string& str, bool commaNeeded) {
+static void print_VkSampleMask(VkSampleMask obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
 }
-static void print_VkSampleMask(const VkSampleMask * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSampleMask(const VkSampleMask * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
 }
 
-static void print_VkBuffer(VkBuffer obj, const std::string& str, bool commaNeeded) {
+static void print_VkBuffer(VkBuffer obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkBuffer(const VkBuffer * obj, const std::string& str, bool commaNeeded) {
+static void print_VkBuffer(const VkBuffer * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -1982,14 +352,14 @@ static void print_VkBuffer(const VkBuffer * obj, const std::string& str, bool co
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkImage(VkImage obj, const std::string& str, bool commaNeeded) {
+static void print_VkImage(VkImage obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkImage(const VkImage * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImage(const VkImage * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -1997,14 +367,14 @@ static void print_VkImage(const VkImage * obj, const std::string& str, bool comm
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkInstance(VkInstance obj, const std::string& str, bool commaNeeded) {
+static void print_VkInstance(VkInstance obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkInstance(const VkInstance * obj, const std::string& str, bool commaNeeded) {
+static void print_VkInstance(const VkInstance * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2012,14 +382,14 @@ static void print_VkInstance(const VkInstance * obj, const std::string& str, boo
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkPhysicalDevice(VkPhysicalDevice obj, const std::string& str, bool commaNeeded) {
+static void print_VkPhysicalDevice(VkPhysicalDevice obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkPhysicalDevice(const VkPhysicalDevice * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPhysicalDevice(const VkPhysicalDevice * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2027,14 +397,14 @@ static void print_VkPhysicalDevice(const VkPhysicalDevice * obj, const std::stri
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkDevice(VkDevice obj, const std::string& str, bool commaNeeded) {
+static void print_VkDevice(VkDevice obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkDevice(const VkDevice * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDevice(const VkDevice * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2042,14 +412,14 @@ static void print_VkDevice(const VkDevice * obj, const std::string& str, bool co
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkQueue(VkQueue obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueue(VkQueue obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkQueue(const VkQueue * obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueue(const VkQueue * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2057,14 +427,14 @@ static void print_VkQueue(const VkQueue * obj, const std::string& str, bool comm
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkSemaphore(VkSemaphore obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphore(VkSemaphore obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkSemaphore(const VkSemaphore * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphore(const VkSemaphore * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2072,14 +442,14 @@ static void print_VkSemaphore(const VkSemaphore * obj, const std::string& str, b
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkCommandBuffer(VkCommandBuffer obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandBuffer(VkCommandBuffer obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkCommandBuffer(const VkCommandBuffer * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandBuffer(const VkCommandBuffer * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2087,14 +457,14 @@ static void print_VkCommandBuffer(const VkCommandBuffer * obj, const std::string
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkFence(VkFence obj, const std::string& str, bool commaNeeded) {
+static void print_VkFence(VkFence obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkFence(const VkFence * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFence(const VkFence * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2102,14 +472,14 @@ static void print_VkFence(const VkFence * obj, const std::string& str, bool comm
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkDeviceMemory(VkDeviceMemory obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceMemory(VkDeviceMemory obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkDeviceMemory(const VkDeviceMemory * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceMemory(const VkDeviceMemory * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2117,14 +487,14 @@ static void print_VkDeviceMemory(const VkDeviceMemory * obj, const std::string&
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkEvent(VkEvent obj, const std::string& str, bool commaNeeded) {
+static void print_VkEvent(VkEvent obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkEvent(const VkEvent * obj, const std::string& str, bool commaNeeded) {
+static void print_VkEvent(const VkEvent * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2132,14 +502,14 @@ static void print_VkEvent(const VkEvent * obj, const std::string& str, bool comm
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkQueryPool(VkQueryPool obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryPool(VkQueryPool obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkQueryPool(const VkQueryPool * obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryPool(const VkQueryPool * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2147,14 +517,14 @@ static void print_VkQueryPool(const VkQueryPool * obj, const std::string& str, b
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkBufferView(VkBufferView obj, const std::string& str, bool commaNeeded) {
+static void print_VkBufferView(VkBufferView obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkBufferView(const VkBufferView * obj, const std::string& str, bool commaNeeded) {
+static void print_VkBufferView(const VkBufferView * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2162,14 +532,14 @@ static void print_VkBufferView(const VkBufferView * obj, const std::string& str,
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkImageView(VkImageView obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageView(VkImageView obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkImageView(const VkImageView * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageView(const VkImageView * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2177,14 +547,14 @@ static void print_VkImageView(const VkImageView * obj, const std::string& str, b
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkShaderModule(VkShaderModule obj, const std::string& str, bool commaNeeded) {
+static void print_VkShaderModule(VkShaderModule obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkShaderModule(const VkShaderModule * obj, const std::string& str, bool commaNeeded) {
+static void print_VkShaderModule(const VkShaderModule * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2192,14 +562,14 @@ static void print_VkShaderModule(const VkShaderModule * obj, const std::string&
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkPipelineCache(VkPipelineCache obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCache(VkPipelineCache obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkPipelineCache(const VkPipelineCache * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCache(const VkPipelineCache * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2207,14 +577,14 @@ static void print_VkPipelineCache(const VkPipelineCache * obj, const std::string
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkPipelineLayout(VkPipelineLayout obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineLayout(VkPipelineLayout obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkPipelineLayout(const VkPipelineLayout * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineLayout(const VkPipelineLayout * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2222,14 +592,14 @@ static void print_VkPipelineLayout(const VkPipelineLayout * obj, const std::stri
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkPipeline(VkPipeline obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipeline(VkPipeline obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkPipeline(const VkPipeline * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipeline(const VkPipeline * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2237,14 +607,14 @@ static void print_VkPipeline(const VkPipeline * obj, const std::string& str, boo
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkRenderPass(VkRenderPass obj, const std::string& str, bool commaNeeded) {
+static void print_VkRenderPass(VkRenderPass obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkRenderPass(const VkRenderPass * obj, const std::string& str, bool commaNeeded) {
+static void print_VkRenderPass(const VkRenderPass * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2252,14 +622,14 @@ static void print_VkRenderPass(const VkRenderPass * obj, const std::string& str,
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkDescriptorSetLayout(VkDescriptorSetLayout obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorSetLayout(VkDescriptorSetLayout obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkDescriptorSetLayout(const VkDescriptorSetLayout * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorSetLayout(const VkDescriptorSetLayout * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2267,14 +637,14 @@ static void print_VkDescriptorSetLayout(const VkDescriptorSetLayout * obj, const
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkSampler(VkSampler obj, const std::string& str, bool commaNeeded) {
+static void print_VkSampler(VkSampler obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkSampler(const VkSampler * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSampler(const VkSampler * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2282,14 +652,14 @@ static void print_VkSampler(const VkSampler * obj, const std::string& str, bool
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkDescriptorSet(VkDescriptorSet obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorSet(VkDescriptorSet obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkDescriptorSet(const VkDescriptorSet * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorSet(const VkDescriptorSet * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2297,14 +667,14 @@ static void print_VkDescriptorSet(const VkDescriptorSet * obj, const std::string
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkDescriptorPool(VkDescriptorPool obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorPool(VkDescriptorPool obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkDescriptorPool(const VkDescriptorPool * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorPool(const VkDescriptorPool * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2312,14 +682,14 @@ static void print_VkDescriptorPool(const VkDescriptorPool * obj, const std::stri
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkFramebuffer(VkFramebuffer obj, const std::string& str, bool commaNeeded) {
+static void print_VkFramebuffer(VkFramebuffer obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkFramebuffer(const VkFramebuffer * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFramebuffer(const VkFramebuffer * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2327,14 +697,14 @@ static void print_VkFramebuffer(const VkFramebuffer * obj, const std::string& st
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkCommandPool(VkCommandPool obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandPool(VkCommandPool obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkCommandPool(const VkCommandPool * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandPool(const VkCommandPool * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -2366,6 +736,7 @@ static std::map<deUint64, std::string> VkResult_map = {
     std::make_pair(1000072003, "VK_ERROR_INVALID_EXTERNAL_HANDLE"),
     std::make_pair(1000161000, "VK_ERROR_FRAGMENTATION"),
     std::make_pair(1000257000, "VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS"),
+    std::make_pair(1000011001, "VK_ERROR_VALIDATION_FAILED"),
     std::make_pair(1000298000, "VK_ERROR_INVALID_PIPELINE_CACHE_DATA"),
     std::make_pair(1000298001, "VK_ERROR_NO_PIPELINE_MATCH"),
     std::make_pair(1000000000, "VK_ERROR_SURFACE_LOST_KHR"),
@@ -2373,7 +744,6 @@ static std::map<deUint64, std::string> VkResult_map = {
     std::make_pair(1000001003, "VK_SUBOPTIMAL_KHR"),
     std::make_pair(1000001004, "VK_ERROR_OUT_OF_DATE_KHR"),
     std::make_pair(1000003001, "VK_ERROR_INCOMPATIBLE_DISPLAY_KHR"),
-    std::make_pair(1000011001, "VK_ERROR_VALIDATION_FAILED_EXT"),
     std::make_pair(1000012000, "VK_ERROR_INVALID_SHADER_NV"),
     std::make_pair(1000158000, "VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT"),
     std::make_pair(1000174001, "VK_ERROR_NOT_PERMITTED_EXT"),
@@ -2384,7 +754,7 @@ static std::map<deUint64, std::string> VkResult_map = {
     std::make_pair(1000268003, "VK_OPERATION_NOT_DEFERRED_KHR"),
     std::make_pair(1000297000, "VK_PIPELINE_COMPILE_REQUIRED_EXT"),
 };
-static void print_VkResult(VkResult obj, const std::string& str, bool commaNeeded) {
+static void print_VkResult(VkResult obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -2392,7 +762,7 @@ static void print_VkResult(VkResult obj, const std::string& str, bool commaNeede
      else
          _OUT << "\"" << VkResult_map[obj] << "\"" << std::endl;
 }
-static void print_VkResult(const VkResult * obj, const std::string& str, bool commaNeeded) {
+static void print_VkResult(const VkResult * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -2409,7 +779,6 @@ static std::map<deUint64, std::string> VkStructureType_map = {
     std::make_pair(4, "VK_STRUCTURE_TYPE_SUBMIT_INFO"),
     std::make_pair(5, "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO"),
     std::make_pair(6, "VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE"),
-    std::make_pair(7, "VK_STRUCTURE_TYPE_BIND_SPARSE_INFO"),
     std::make_pair(8, "VK_STRUCTURE_TYPE_FENCE_CREATE_INFO"),
     std::make_pair(9, "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO"),
     std::make_pair(10, "VK_STRUCTURE_TYPE_EVENT_CREATE_INFO"),
@@ -2418,7 +787,6 @@ static std::map<deUint64, std::string> VkStructureType_map = {
     std::make_pair(13, "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO"),
     std::make_pair(14, "VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO"),
     std::make_pair(15, "VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO"),
-    std::make_pair(16, "VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO"),
     std::make_pair(17, "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO"),
     std::make_pair(18, "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO"),
     std::make_pair(19, "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO"),
@@ -2630,6 +998,8 @@ static std::map<deUint64, std::string> VkStructureType_map = {
     std::make_pair(1000038006, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT"),
     std::make_pair(1000038007, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT"),
     std::make_pair(1000038008, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT"),
+    std::make_pair(1000038009, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT"),
+    std::make_pair(1000038010, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT"),
     std::make_pair(1000039000, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT"),
     std::make_pair(1000039001, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT"),
     std::make_pair(1000039002, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT"),
@@ -2640,6 +1010,8 @@ static std::map<deUint64, std::string> VkStructureType_map = {
     std::make_pair(1000039007, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT"),
     std::make_pair(1000039008, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT"),
     std::make_pair(1000039009, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_EXT"),
+    std::make_pair(1000039010, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT"),
+    std::make_pair(1000039011, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT"),
     std::make_pair(1000040000, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT"),
     std::make_pair(1000040001, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT"),
     std::make_pair(1000040002, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT"),
@@ -2942,6 +1314,7 @@ static std::map<deUint64, std::string> VkStructureType_map = {
     std::make_pair(1000297000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT"),
     std::make_pair(1000299000, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR"),
     std::make_pair(1000299001, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR"),
+    std::make_pair(1000299002, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR"),
     std::make_pair(1000300000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV"),
     std::make_pair(1000300001, "VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV"),
     std::make_pair(1000308000, "VK_STRUCTURE_TYPE_REFRESH_OBJECT_LIST_KHR"),
@@ -2982,6 +1355,7 @@ static std::map<deUint64, std::string> VkStructureType_map = {
     std::make_pair(1000337009, "VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR"),
     std::make_pair(1000337010, "VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR"),
     std::make_pair(1000340000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT"),
+    std::make_pair(1000342000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM"),
     std::make_pair(1000344000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT"),
     std::make_pair(1000346000, "VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT"),
     std::make_pair(1000351000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE"),
@@ -2990,6 +1364,8 @@ static std::map<deUint64, std::string> VkStructureType_map = {
     std::make_pair(1000352001, "VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT"),
     std::make_pair(1000352002, "VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT"),
     std::make_pair(1000353000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT"),
+    std::make_pair(1000355000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT"),
+    std::make_pair(1000355001, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT"),
     std::make_pair(1000356000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT"),
     std::make_pair(1000360000, "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR"),
     std::make_pair(1000364000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA"),
@@ -3019,6 +1395,8 @@ static std::map<deUint64, std::string> VkStructureType_map = {
     std::make_pair(1000381001, "VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT"),
     std::make_pair(1000388000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT"),
     std::make_pair(1000388001, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT"),
+    std::make_pair(1000391000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT"),
+    std::make_pair(1000391001, "VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT"),
     std::make_pair(1000392000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT"),
     std::make_pair(1000392001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT"),
     std::make_pair(1000411000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT"),
@@ -3028,8 +1406,9 @@ static std::map<deUint64, std::string> VkStructureType_map = {
     std::make_pair(1000413001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR"),
     std::make_pair(1000413002, "VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR"),
     std::make_pair(1000413003, "VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR"),
+    std::make_pair(1000435000, "VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT"),
 };
-static void print_VkStructureType(VkStructureType obj, const std::string& str, bool commaNeeded) {
+static void print_VkStructureType(VkStructureType obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3037,7 +1416,7 @@ static void print_VkStructureType(VkStructureType obj, const std::string& str, b
      else
          _OUT << "\"" << VkStructureType_map[obj] << "\"" << std::endl;
 }
-static void print_VkStructureType(const VkStructureType * obj, const std::string& str, bool commaNeeded) {
+static void print_VkStructureType(const VkStructureType * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3077,7 +1456,7 @@ static std::map<deUint64, std::string> VkAccessFlagBits_map = {
     std::make_pair(1ULL << 18, "VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV"),
     std::make_pair(0, "VK_ACCESS_NONE_KHR"),
 };
-static void print_VkAccessFlagBits(VkAccessFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkAccessFlagBits(VkAccessFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3085,7 +1464,7 @@ static void print_VkAccessFlagBits(VkAccessFlagBits obj, const std::string& str,
      else
          _OUT << "\"" << VkAccessFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkAccessFlagBits(const VkAccessFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkAccessFlagBits(const VkAccessFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3123,7 +1502,7 @@ static std::map<deUint64, std::string> VkImageLayout_map = {
     std::make_pair(1000314000, "VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR"),
     std::make_pair(1000314001, "VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR"),
 };
-static void print_VkImageLayout(VkImageLayout obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageLayout(VkImageLayout obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3131,7 +1510,7 @@ static void print_VkImageLayout(VkImageLayout obj, const std::string& str, bool
      else
          _OUT << "\"" << VkImageLayout_map[obj] << "\"" << std::endl;
 }
-static void print_VkImageLayout(const VkImageLayout * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageLayout(const VkImageLayout * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3152,8 +1531,9 @@ static std::map<deUint64, std::string> VkImageAspectFlagBits_map = {
     std::make_pair(1ULL << 8, "VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT"),
     std::make_pair(1ULL << 9, "VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT"),
     std::make_pair(1ULL << 10, "VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT"),
+    std::make_pair(0, "VK_IMAGE_ASPECT_NONE_KHR"),
 };
-static void print_VkImageAspectFlagBits(VkImageAspectFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageAspectFlagBits(VkImageAspectFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3161,7 +1541,7 @@ static void print_VkImageAspectFlagBits(VkImageAspectFlagBits obj, const std::st
      else
          _OUT << "\"" << VkImageAspectFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkImageAspectFlagBits(const VkImageAspectFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageAspectFlagBits(const VkImageAspectFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3186,7 +1566,6 @@ static std::map<deUint64, std::string> VkObjectType_map = {
     std::make_pair(12, "VK_OBJECT_TYPE_QUERY_POOL"),
     std::make_pair(13, "VK_OBJECT_TYPE_BUFFER_VIEW"),
     std::make_pair(14, "VK_OBJECT_TYPE_IMAGE_VIEW"),
-    std::make_pair(15, "VK_OBJECT_TYPE_SHADER_MODULE"),
     std::make_pair(16, "VK_OBJECT_TYPE_PIPELINE_CACHE"),
     std::make_pair(17, "VK_OBJECT_TYPE_PIPELINE_LAYOUT"),
     std::make_pair(18, "VK_OBJECT_TYPE_RENDER_PASS"),
@@ -3217,7 +1596,7 @@ static std::map<deUint64, std::string> VkObjectType_map = {
     std::make_pair(1000295000, "VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT"),
     std::make_pair(1000366000, "VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA"),
 };
-static void print_VkObjectType(VkObjectType obj, const std::string& str, bool commaNeeded) {
+static void print_VkObjectType(VkObjectType obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3225,7 +1604,7 @@ static void print_VkObjectType(VkObjectType obj, const std::string& str, bool co
      else
          _OUT << "\"" << VkObjectType_map[obj] << "\"" << std::endl;
 }
-static void print_VkObjectType(const VkObjectType * obj, const std::string& str, bool commaNeeded) {
+static void print_VkObjectType(const VkObjectType * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3238,7 +1617,7 @@ static std::map<deUint64, std::string> VkPipelineCacheHeaderVersion_map = {
     std::make_pair(1, "VK_PIPELINE_CACHE_HEADER_VERSION_ONE"),
     std::make_pair(1000298001, "VK_PIPELINE_CACHE_HEADER_VERSION_SAFETY_CRITICAL_ONE"),
 };
-static void print_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3246,7 +1625,7 @@ static void print_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion obj,
      else
          _OUT << "\"" << VkPipelineCacheHeaderVersion_map[obj] << "\"" << std::endl;
 }
-static void print_VkPipelineCacheHeaderVersion(const VkPipelineCacheHeaderVersion * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCacheHeaderVersion(const VkPipelineCacheHeaderVersion * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3263,7 +1642,7 @@ static std::map<deUint64, std::string> VkVendorId_map = {
     std::make_pair(0x10005, "VK_VENDOR_ID_MESA"),
     std::make_pair(0x10006, "VK_VENDOR_ID_POCL"),
 };
-static void print_VkVendorId(VkVendorId obj, const std::string& str, bool commaNeeded) {
+static void print_VkVendorId(VkVendorId obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3271,7 +1650,7 @@ static void print_VkVendorId(VkVendorId obj, const std::string& str, bool commaN
      else
          _OUT << "\"" << VkVendorId_map[obj] << "\"" << std::endl;
 }
-static void print_VkVendorId(const VkVendorId * obj, const std::string& str, bool commaNeeded) {
+static void print_VkVendorId(const VkVendorId * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3287,7 +1666,7 @@ static std::map<deUint64, std::string> VkSystemAllocationScope_map = {
     std::make_pair(3, "VK_SYSTEM_ALLOCATION_SCOPE_DEVICE"),
     std::make_pair(4, "VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE"),
 };
-static void print_VkSystemAllocationScope(VkSystemAllocationScope obj, const std::string& str, bool commaNeeded) {
+static void print_VkSystemAllocationScope(VkSystemAllocationScope obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3295,7 +1674,7 @@ static void print_VkSystemAllocationScope(VkSystemAllocationScope obj, const std
      else
          _OUT << "\"" << VkSystemAllocationScope_map[obj] << "\"" << std::endl;
 }
-static void print_VkSystemAllocationScope(const VkSystemAllocationScope * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSystemAllocationScope(const VkSystemAllocationScope * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3307,7 +1686,7 @@ static void print_VkSystemAllocationScope(const VkSystemAllocationScope * obj, c
 static std::map<deUint64, std::string> VkInternalAllocationType_map = {
     std::make_pair(0, "VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE"),
 };
-static void print_VkInternalAllocationType(VkInternalAllocationType obj, const std::string& str, bool commaNeeded) {
+static void print_VkInternalAllocationType(VkInternalAllocationType obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3315,7 +1694,7 @@ static void print_VkInternalAllocationType(VkInternalAllocationType obj, const s
      else
          _OUT << "\"" << VkInternalAllocationType_map[obj] << "\"" << std::endl;
 }
-static void print_VkInternalAllocationType(const VkInternalAllocationType * obj, const std::string& str, bool commaNeeded) {
+static void print_VkInternalAllocationType(const VkInternalAllocationType * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3603,7 +1982,7 @@ static std::map<deUint64, std::string> VkFormat_map = {
     std::make_pair(1000340000, "VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT"),
     std::make_pair(1000340001, "VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT"),
 };
-static void print_VkFormat(VkFormat obj, const std::string& str, bool commaNeeded) {
+static void print_VkFormat(VkFormat obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3611,7 +1990,7 @@ static void print_VkFormat(VkFormat obj, const std::string& str, bool commaNeede
      else
          _OUT << "\"" << VkFormat_map[obj] << "\"" << std::endl;
 }
-static void print_VkFormat(const VkFormat * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFormat(const VkFormat * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3653,7 +2032,7 @@ static std::map<deUint64, std::string> VkFormatFeatureFlagBits_map = {
     std::make_pair(1ULL << 27, "VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR"),
     std::make_pair(1ULL << 28, "VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR"),
 };
-static void print_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3661,7 +2040,7 @@ static void print_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits obj, const std
      else
          _OUT << "\"" << VkFormatFeatureFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkFormatFeatureFlagBits(const VkFormatFeatureFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFormatFeatureFlagBits(const VkFormatFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3690,7 +2069,7 @@ static std::map<deUint64, std::string> VkImageCreateFlagBits_map = {
     std::make_pair(1ULL << 17, "VK_IMAGE_CREATE_RESERVED_394_BIT_EXT"),
     std::make_pair(1ULL << 15, "VK_IMAGE_CREATE_RESERVED_426_BIT_QCOM"),
 };
-static void print_VkImageCreateFlagBits(VkImageCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageCreateFlagBits(VkImageCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3698,7 +2077,7 @@ static void print_VkImageCreateFlagBits(VkImageCreateFlagBits obj, const std::st
      else
          _OUT << "\"" << VkImageCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkImageCreateFlagBits(const VkImageCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageCreateFlagBits(const VkImageCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3716,7 +2095,7 @@ static std::map<deUint64, std::string> VkSampleCountFlagBits_map = {
     std::make_pair(1ULL << 5, "VK_SAMPLE_COUNT_32_BIT"),
     std::make_pair(1ULL << 6, "VK_SAMPLE_COUNT_64_BIT"),
 };
-static void print_VkSampleCountFlagBits(VkSampleCountFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkSampleCountFlagBits(VkSampleCountFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3724,7 +2103,7 @@ static void print_VkSampleCountFlagBits(VkSampleCountFlagBits obj, const std::st
      else
          _OUT << "\"" << VkSampleCountFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkSampleCountFlagBits(const VkSampleCountFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSampleCountFlagBits(const VkSampleCountFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3738,7 +2117,7 @@ static std::map<deUint64, std::string> VkImageTiling_map = {
     std::make_pair(1, "VK_IMAGE_TILING_LINEAR"),
     std::make_pair(1000158000, "VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT"),
 };
-static void print_VkImageTiling(VkImageTiling obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageTiling(VkImageTiling obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3746,7 +2125,7 @@ static void print_VkImageTiling(VkImageTiling obj, const std::string& str, bool
      else
          _OUT << "\"" << VkImageTiling_map[obj] << "\"" << std::endl;
 }
-static void print_VkImageTiling(const VkImageTiling * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageTiling(const VkImageTiling * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3760,7 +2139,7 @@ static std::map<deUint64, std::string> VkImageType_map = {
     std::make_pair(1, "VK_IMAGE_TYPE_2D"),
     std::make_pair(2, "VK_IMAGE_TYPE_3D"),
 };
-static void print_VkImageType(VkImageType obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageType(VkImageType obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3768,7 +2147,7 @@ static void print_VkImageType(VkImageType obj, const std::string& str, bool comm
      else
          _OUT << "\"" << VkImageType_map[obj] << "\"" << std::endl;
 }
-static void print_VkImageType(const VkImageType * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageType(const VkImageType * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3799,7 +2178,7 @@ static std::map<deUint64, std::string> VkImageUsageFlagBits_map = {
     std::make_pair(1ULL << 19, "VK_IMAGE_USAGE_RESERVED_19_BIT_EXT"),
     std::make_pair(1ULL << 18, "VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI"),
 };
-static void print_VkImageUsageFlagBits(VkImageUsageFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageUsageFlagBits(VkImageUsageFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3807,7 +2186,7 @@ static void print_VkImageUsageFlagBits(VkImageUsageFlagBits obj, const std::stri
      else
          _OUT << "\"" << VkImageUsageFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkImageUsageFlagBits(const VkImageUsageFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageUsageFlagBits(const VkImageUsageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3821,7 +2200,7 @@ static std::map<deUint64, std::string> VkMemoryHeapFlagBits_map = {
     std::make_pair(1ULL << 1, "VK_MEMORY_HEAP_MULTI_INSTANCE_BIT"),
     std::make_pair(1ULL << 2, "VK_MEMORY_HEAP_SEU_SAFE_BIT"),
 };
-static void print_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3829,7 +2208,7 @@ static void print_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits obj, const std::stri
      else
          _OUT << "\"" << VkMemoryHeapFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkMemoryHeapFlagBits(const VkMemoryHeapFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryHeapFlagBits(const VkMemoryHeapFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3849,7 +2228,7 @@ static std::map<deUint64, std::string> VkMemoryPropertyFlagBits_map = {
     std::make_pair(1ULL << 7, "VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD"),
     std::make_pair(1ULL << 8, "VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV"),
 };
-static void print_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3857,7 +2236,7 @@ static void print_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits obj, const s
      else
          _OUT << "\"" << VkMemoryPropertyFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkMemoryPropertyFlagBits(const VkMemoryPropertyFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryPropertyFlagBits(const VkMemoryPropertyFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3873,7 +2252,7 @@ static std::map<deUint64, std::string> VkPhysicalDeviceType_map = {
     std::make_pair(3, "VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU"),
     std::make_pair(4, "VK_PHYSICAL_DEVICE_TYPE_CPU"),
 };
-static void print_VkPhysicalDeviceType(VkPhysicalDeviceType obj, const std::string& str, bool commaNeeded) {
+static void print_VkPhysicalDeviceType(VkPhysicalDeviceType obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3881,7 +2260,7 @@ static void print_VkPhysicalDeviceType(VkPhysicalDeviceType obj, const std::stri
      else
          _OUT << "\"" << VkPhysicalDeviceType_map[obj] << "\"" << std::endl;
 }
-static void print_VkPhysicalDeviceType(const VkPhysicalDeviceType * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPhysicalDeviceType(const VkPhysicalDeviceType * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3894,12 +2273,11 @@ static std::map<deUint64, std::string> VkQueueFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_QUEUE_GRAPHICS_BIT"),
     std::make_pair(1ULL << 1, "VK_QUEUE_COMPUTE_BIT"),
     std::make_pair(1ULL << 2, "VK_QUEUE_TRANSFER_BIT"),
-    std::make_pair(1ULL << 3, "VK_QUEUE_SPARSE_BINDING_BIT"),
     std::make_pair(1ULL << 4, "VK_QUEUE_PROTECTED_BIT"),
     std::make_pair(1ULL << 5, "VK_QUEUE_VIDEO_DECODE_BIT_KHR"),
     std::make_pair(1ULL << 6, "VK_QUEUE_VIDEO_ENCODE_BIT_KHR"),
 };
-static void print_VkQueueFlagBits(VkQueueFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueueFlagBits(VkQueueFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3907,7 +2285,7 @@ static void print_VkQueueFlagBits(VkQueueFlagBits obj, const std::string& str, b
      else
          _OUT << "\"" << VkQueueFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkQueueFlagBits(const VkQueueFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueueFlagBits(const VkQueueFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3919,7 +2297,7 @@ static void print_VkQueueFlagBits(const VkQueueFlagBits * obj, const std::string
 static std::map<deUint64, std::string> VkDeviceQueueCreateFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT"),
 };
-static void print_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3927,7 +2305,7 @@ static void print_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits obj, c
      else
          _OUT << "\"" << VkDeviceQueueCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkDeviceQueueCreateFlagBits(const VkDeviceQueueCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceQueueCreateFlagBits(const VkDeviceQueueCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3965,7 +2343,7 @@ static std::map<deUint64, std::string> VkPipelineStageFlagBits_map = {
     std::make_pair(1ULL << 17, "VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV"),
     std::make_pair(0, "VK_PIPELINE_STAGE_NONE_KHR"),
 };
-static void print_VkPipelineStageFlagBits(VkPipelineStageFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineStageFlagBits(VkPipelineStageFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3973,7 +2351,7 @@ static void print_VkPipelineStageFlagBits(VkPipelineStageFlagBits obj, const std
      else
          _OUT << "\"" << VkPipelineStageFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkPipelineStageFlagBits(const VkPipelineStageFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineStageFlagBits(const VkPipelineStageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3985,7 +2363,7 @@ static void print_VkPipelineStageFlagBits(const VkPipelineStageFlagBits * obj, c
 static std::map<deUint64, std::string> VkFenceCreateFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_FENCE_CREATE_SIGNALED_BIT"),
 };
-static void print_VkFenceCreateFlagBits(VkFenceCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkFenceCreateFlagBits(VkFenceCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -3993,7 +2371,7 @@ static void print_VkFenceCreateFlagBits(VkFenceCreateFlagBits obj, const std::st
      else
          _OUT << "\"" << VkFenceCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkFenceCreateFlagBits(const VkFenceCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFenceCreateFlagBits(const VkFenceCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4005,7 +2383,7 @@ static void print_VkFenceCreateFlagBits(const VkFenceCreateFlagBits * obj, const
 static std::map<deUint64, std::string> VkEventCreateFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR"),
 };
-static void print_VkEventCreateFlagBits(VkEventCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkEventCreateFlagBits(VkEventCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4013,7 +2391,7 @@ static void print_VkEventCreateFlagBits(VkEventCreateFlagBits obj, const std::st
      else
          _OUT << "\"" << VkEventCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkEventCreateFlagBits(const VkEventCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkEventCreateFlagBits(const VkEventCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4035,7 +2413,7 @@ static std::map<deUint64, std::string> VkQueryPipelineStatisticFlagBits_map = {
     std::make_pair(1ULL << 9, "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT"),
     std::make_pair(1ULL << 10, "VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT"),
 };
-static void print_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4043,7 +2421,7 @@ static void print_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagB
      else
          _OUT << "\"" << VkQueryPipelineStatisticFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkQueryPipelineStatisticFlagBits(const VkQueryPipelineStatisticFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryPipelineStatisticFlagBits(const VkQueryPipelineStatisticFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4065,7 +2443,7 @@ static std::map<deUint64, std::string> VkQueryType_map = {
     std::make_pair(1000210000, "VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL"),
     std::make_pair(1000299000, "VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR"),
 };
-static void print_VkQueryType(VkQueryType obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryType(VkQueryType obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4073,7 +2451,7 @@ static void print_VkQueryType(VkQueryType obj, const std::string& str, bool comm
      else
          _OUT << "\"" << VkQueryType_map[obj] << "\"" << std::endl;
 }
-static void print_VkQueryType(const VkQueryType * obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryType(const VkQueryType * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4089,7 +2467,7 @@ static std::map<deUint64, std::string> VkQueryResultFlagBits_map = {
     std::make_pair(1ULL << 3, "VK_QUERY_RESULT_PARTIAL_BIT"),
     std::make_pair(1ULL << 4, "VK_QUERY_RESULT_WITH_STATUS_BIT_KHR"),
 };
-static void print_VkQueryResultFlagBits(VkQueryResultFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryResultFlagBits(VkQueryResultFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4097,7 +2475,7 @@ static void print_VkQueryResultFlagBits(VkQueryResultFlagBits obj, const std::st
      else
          _OUT << "\"" << VkQueryResultFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkQueryResultFlagBits(const VkQueryResultFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryResultFlagBits(const VkQueryResultFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4114,7 +2492,7 @@ static std::map<deUint64, std::string> VkBufferCreateFlagBits_map = {
     std::make_pair(1ULL << 4, "VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT"),
     std::make_pair(1ULL << 5, "VK_BUFFER_CREATE_RESERVED_5_BIT_AMD"),
 };
-static void print_VkBufferCreateFlagBits(VkBufferCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkBufferCreateFlagBits(VkBufferCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4122,7 +2500,7 @@ static void print_VkBufferCreateFlagBits(VkBufferCreateFlagBits obj, const std::
      else
          _OUT << "\"" << VkBufferCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkBufferCreateFlagBits(const VkBufferCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkBufferCreateFlagBits(const VkBufferCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4156,7 +2534,7 @@ static std::map<deUint64, std::string> VkBufferUsageFlagBits_map = {
     std::make_pair(1ULL << 21, "VK_BUFFER_USAGE_RESERVED_21_BIT_AMD"),
     std::make_pair(1ULL << 22, "VK_BUFFER_USAGE_RESERVED_22_BIT_AMD"),
 };
-static void print_VkBufferUsageFlagBits(VkBufferUsageFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkBufferUsageFlagBits(VkBufferUsageFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4164,7 +2542,7 @@ static void print_VkBufferUsageFlagBits(VkBufferUsageFlagBits obj, const std::st
      else
          _OUT << "\"" << VkBufferUsageFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkBufferUsageFlagBits(const VkBufferUsageFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkBufferUsageFlagBits(const VkBufferUsageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4177,7 +2555,7 @@ static std::map<deUint64, std::string> VkSharingMode_map = {
     std::make_pair(0, "VK_SHARING_MODE_EXCLUSIVE"),
     std::make_pair(1, "VK_SHARING_MODE_CONCURRENT"),
 };
-static void print_VkSharingMode(VkSharingMode obj, const std::string& str, bool commaNeeded) {
+static void print_VkSharingMode(VkSharingMode obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4185,7 +2563,7 @@ static void print_VkSharingMode(VkSharingMode obj, const std::string& str, bool
      else
          _OUT << "\"" << VkSharingMode_map[obj] << "\"" << std::endl;
 }
-static void print_VkSharingMode(const VkSharingMode * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSharingMode(const VkSharingMode * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4203,7 +2581,7 @@ static std::map<deUint64, std::string> VkComponentSwizzle_map = {
     std::make_pair(5, "VK_COMPONENT_SWIZZLE_B"),
     std::make_pair(6, "VK_COMPONENT_SWIZZLE_A"),
 };
-static void print_VkComponentSwizzle(VkComponentSwizzle obj, const std::string& str, bool commaNeeded) {
+static void print_VkComponentSwizzle(VkComponentSwizzle obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4211,7 +2589,7 @@ static void print_VkComponentSwizzle(VkComponentSwizzle obj, const std::string&
      else
          _OUT << "\"" << VkComponentSwizzle_map[obj] << "\"" << std::endl;
 }
-static void print_VkComponentSwizzle(const VkComponentSwizzle * obj, const std::string& str, bool commaNeeded) {
+static void print_VkComponentSwizzle(const VkComponentSwizzle * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4224,7 +2602,7 @@ static std::map<deUint64, std::string> VkImageViewCreateFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT"),
     std::make_pair(1ULL << 1, "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT"),
 };
-static void print_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4232,7 +2610,7 @@ static void print_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits obj, const
      else
          _OUT << "\"" << VkImageViewCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkImageViewCreateFlagBits(const VkImageViewCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageViewCreateFlagBits(const VkImageViewCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4250,7 +2628,7 @@ static std::map<deUint64, std::string> VkImageViewType_map = {
     std::make_pair(5, "VK_IMAGE_VIEW_TYPE_2D_ARRAY"),
     std::make_pair(6, "VK_IMAGE_VIEW_TYPE_CUBE_ARRAY"),
 };
-static void print_VkImageViewType(VkImageViewType obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageViewType(VkImageViewType obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4258,7 +2636,7 @@ static void print_VkImageViewType(VkImageViewType obj, const std::string& str, b
      else
          _OUT << "\"" << VkImageViewType_map[obj] << "\"" << std::endl;
 }
-static void print_VkImageViewType(const VkImageViewType * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageViewType(const VkImageViewType * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4272,7 +2650,7 @@ static std::map<deUint64, std::string> VkPipelineCacheCreateFlagBits_map = {
     std::make_pair(1ULL << 1, "VK_PIPELINE_CACHE_CREATE_RESERVED_1_BIT_EXT"),
     std::make_pair(1ULL << 0, "VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT"),
 };
-static void print_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4280,7 +2658,7 @@ static void print_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits ob
      else
          _OUT << "\"" << VkPipelineCacheCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkPipelineCacheCreateFlagBits(const VkPipelineCacheCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCacheCreateFlagBits(const VkPipelineCacheCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4310,7 +2688,7 @@ static std::map<deUint64, std::string> VkBlendFactor_map = {
     std::make_pair(17, "VK_BLEND_FACTOR_SRC1_ALPHA"),
     std::make_pair(18, "VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA"),
 };
-static void print_VkBlendFactor(VkBlendFactor obj, const std::string& str, bool commaNeeded) {
+static void print_VkBlendFactor(VkBlendFactor obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4318,7 +2696,7 @@ static void print_VkBlendFactor(VkBlendFactor obj, const std::string& str, bool
      else
          _OUT << "\"" << VkBlendFactor_map[obj] << "\"" << std::endl;
 }
-static void print_VkBlendFactor(const VkBlendFactor * obj, const std::string& str, bool commaNeeded) {
+static void print_VkBlendFactor(const VkBlendFactor * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4380,7 +2758,7 @@ static std::map<deUint64, std::string> VkBlendOp_map = {
     std::make_pair(1000148044, "VK_BLEND_OP_GREEN_EXT"),
     std::make_pair(1000148045, "VK_BLEND_OP_BLUE_EXT"),
 };
-static void print_VkBlendOp(VkBlendOp obj, const std::string& str, bool commaNeeded) {
+static void print_VkBlendOp(VkBlendOp obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4388,7 +2766,7 @@ static void print_VkBlendOp(VkBlendOp obj, const std::string& str, bool commaNee
      else
          _OUT << "\"" << VkBlendOp_map[obj] << "\"" << std::endl;
 }
-static void print_VkBlendOp(const VkBlendOp * obj, const std::string& str, bool commaNeeded) {
+static void print_VkBlendOp(const VkBlendOp * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4403,7 +2781,7 @@ static std::map<deUint64, std::string> VkColorComponentFlagBits_map = {
     std::make_pair(1ULL << 2, "VK_COLOR_COMPONENT_B_BIT"),
     std::make_pair(1ULL << 3, "VK_COLOR_COMPONENT_A_BIT"),
 };
-static void print_VkColorComponentFlagBits(VkColorComponentFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkColorComponentFlagBits(VkColorComponentFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4411,7 +2789,7 @@ static void print_VkColorComponentFlagBits(VkColorComponentFlagBits obj, const s
      else
          _OUT << "\"" << VkColorComponentFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkColorComponentFlagBits(const VkColorComponentFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkColorComponentFlagBits(const VkColorComponentFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4430,7 +2808,7 @@ static std::map<deUint64, std::string> VkCompareOp_map = {
     std::make_pair(6, "VK_COMPARE_OP_GREATER_OR_EQUAL"),
     std::make_pair(7, "VK_COMPARE_OP_ALWAYS"),
 };
-static void print_VkCompareOp(VkCompareOp obj, const std::string& str, bool commaNeeded) {
+static void print_VkCompareOp(VkCompareOp obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4438,7 +2816,7 @@ static void print_VkCompareOp(VkCompareOp obj, const std::string& str, bool comm
      else
          _OUT << "\"" << VkCompareOp_map[obj] << "\"" << std::endl;
 }
-static void print_VkCompareOp(const VkCompareOp * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCompareOp(const VkCompareOp * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4450,11 +2828,10 @@ static void print_VkCompareOp(const VkCompareOp * obj, const std::string& str, b
 static std::map<deUint64, std::string> VkPipelineCreateFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT"),
     std::make_pair(1ULL << 1, "VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT"),
-    std::make_pair(1ULL << 2, "VK_PIPELINE_CREATE_DERIVATIVE_BIT"),
     std::make_pair(1ULL << 3, "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT"),
     std::make_pair(1ULL << 4, "VK_PIPELINE_CREATE_DISPATCH_BASE_BIT"),
-    std::make_pair(1ULL << 21, "VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
-    std::make_pair(1ULL << 22, "VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT"),
+    std::make_pair(1ULL << 21, "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
+    std::make_pair(1ULL << 22, "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT"),
     std::make_pair(1ULL << 14, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR"),
     std::make_pair(1ULL << 15, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR"),
     std::make_pair(1ULL << 16, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR"),
@@ -4473,7 +2850,7 @@ static std::map<deUint64, std::string> VkPipelineCreateFlagBits_map = {
     std::make_pair(1ULL << 10, "VK_PIPELINE_CREATE_RESERVED_10_BIT_AMD"),
     std::make_pair(1ULL << 20, "VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV"),
 };
-static void print_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4481,7 +2858,7 @@ static void print_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits obj, const s
      else
          _OUT << "\"" << VkPipelineCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkPipelineCreateFlagBits(const VkPipelineCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCreateFlagBits(const VkPipelineCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4496,7 +2873,7 @@ static std::map<deUint64, std::string> VkPipelineShaderStageCreateFlagBits_map =
     std::make_pair(1ULL << 1, "VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT"),
     std::make_pair(1ULL << 3, "VK_PIPELINE_SHADER_STAGE_CREATE_RESERVED_3_BIT_KHR"),
 };
-static void print_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4504,7 +2881,7 @@ static void print_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreat
      else
          _OUT << "\"" << VkPipelineShaderStageCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkPipelineShaderStageCreateFlagBits(const VkPipelineShaderStageCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineShaderStageCreateFlagBits(const VkPipelineShaderStageCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4532,7 +2909,7 @@ static std::map<deUint64, std::string> VkShaderStageFlagBits_map = {
     std::make_pair(1ULL << 7, "VK_SHADER_STAGE_MESH_BIT_NV"),
     std::make_pair(1ULL << 14, "VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI"),
 };
-static void print_VkShaderStageFlagBits(VkShaderStageFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkShaderStageFlagBits(VkShaderStageFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4540,7 +2917,7 @@ static void print_VkShaderStageFlagBits(VkShaderStageFlagBits obj, const std::st
      else
          _OUT << "\"" << VkShaderStageFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkShaderStageFlagBits(const VkShaderStageFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkShaderStageFlagBits(const VkShaderStageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4555,7 +2932,7 @@ static std::map<deUint64, std::string> VkCullModeFlagBits_map = {
     std::make_pair(1ULL << 1, "VK_CULL_MODE_BACK_BIT"),
     std::make_pair(0x00000003, "VK_CULL_MODE_FRONT_AND_BACK"),
 };
-static void print_VkCullModeFlagBits(VkCullModeFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkCullModeFlagBits(VkCullModeFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4563,7 +2940,7 @@ static void print_VkCullModeFlagBits(VkCullModeFlagBits obj, const std::string&
      else
          _OUT << "\"" << VkCullModeFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkCullModeFlagBits(const VkCullModeFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCullModeFlagBits(const VkCullModeFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4611,7 +2988,7 @@ static std::map<deUint64, std::string> VkDynamicState_map = {
     std::make_pair(1000377004, "VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT"),
     std::make_pair(1000381000, "VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT"),
 };
-static void print_VkDynamicState(VkDynamicState obj, const std::string& str, bool commaNeeded) {
+static void print_VkDynamicState(VkDynamicState obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4619,7 +2996,7 @@ static void print_VkDynamicState(VkDynamicState obj, const std::string& str, boo
      else
          _OUT << "\"" << VkDynamicState_map[obj] << "\"" << std::endl;
 }
-static void print_VkDynamicState(const VkDynamicState * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDynamicState(const VkDynamicState * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4632,7 +3009,7 @@ static std::map<deUint64, std::string> VkFrontFace_map = {
     std::make_pair(0, "VK_FRONT_FACE_COUNTER_CLOCKWISE"),
     std::make_pair(1, "VK_FRONT_FACE_CLOCKWISE"),
 };
-static void print_VkFrontFace(VkFrontFace obj, const std::string& str, bool commaNeeded) {
+static void print_VkFrontFace(VkFrontFace obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4640,7 +3017,7 @@ static void print_VkFrontFace(VkFrontFace obj, const std::string& str, bool comm
      else
          _OUT << "\"" << VkFrontFace_map[obj] << "\"" << std::endl;
 }
-static void print_VkFrontFace(const VkFrontFace * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFrontFace(const VkFrontFace * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4653,7 +3030,7 @@ static std::map<deUint64, std::string> VkVertexInputRate_map = {
     std::make_pair(0, "VK_VERTEX_INPUT_RATE_VERTEX"),
     std::make_pair(1, "VK_VERTEX_INPUT_RATE_INSTANCE"),
 };
-static void print_VkVertexInputRate(VkVertexInputRate obj, const std::string& str, bool commaNeeded) {
+static void print_VkVertexInputRate(VkVertexInputRate obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4661,7 +3038,7 @@ static void print_VkVertexInputRate(VkVertexInputRate obj, const std::string& st
      else
          _OUT << "\"" << VkVertexInputRate_map[obj] << "\"" << std::endl;
 }
-static void print_VkVertexInputRate(const VkVertexInputRate * obj, const std::string& str, bool commaNeeded) {
+static void print_VkVertexInputRate(const VkVertexInputRate * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4683,7 +3060,7 @@ static std::map<deUint64, std::string> VkPrimitiveTopology_map = {
     std::make_pair(9, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY"),
     std::make_pair(10, "VK_PRIMITIVE_TOPOLOGY_PATCH_LIST"),
 };
-static void print_VkPrimitiveTopology(VkPrimitiveTopology obj, const std::string& str, bool commaNeeded) {
+static void print_VkPrimitiveTopology(VkPrimitiveTopology obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4691,7 +3068,7 @@ static void print_VkPrimitiveTopology(VkPrimitiveTopology obj, const std::string
      else
          _OUT << "\"" << VkPrimitiveTopology_map[obj] << "\"" << std::endl;
 }
-static void print_VkPrimitiveTopology(const VkPrimitiveTopology * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPrimitiveTopology(const VkPrimitiveTopology * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4706,7 +3083,7 @@ static std::map<deUint64, std::string> VkPolygonMode_map = {
     std::make_pair(2, "VK_POLYGON_MODE_POINT"),
     std::make_pair(1000153000, "VK_POLYGON_MODE_FILL_RECTANGLE_NV"),
 };
-static void print_VkPolygonMode(VkPolygonMode obj, const std::string& str, bool commaNeeded) {
+static void print_VkPolygonMode(VkPolygonMode obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4714,7 +3091,7 @@ static void print_VkPolygonMode(VkPolygonMode obj, const std::string& str, bool
      else
          _OUT << "\"" << VkPolygonMode_map[obj] << "\"" << std::endl;
 }
-static void print_VkPolygonMode(const VkPolygonMode * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPolygonMode(const VkPolygonMode * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4733,7 +3110,7 @@ static std::map<deUint64, std::string> VkStencilOp_map = {
     std::make_pair(6, "VK_STENCIL_OP_INCREMENT_AND_WRAP"),
     std::make_pair(7, "VK_STENCIL_OP_DECREMENT_AND_WRAP"),
 };
-static void print_VkStencilOp(VkStencilOp obj, const std::string& str, bool commaNeeded) {
+static void print_VkStencilOp(VkStencilOp obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4741,7 +3118,7 @@ static void print_VkStencilOp(VkStencilOp obj, const std::string& str, bool comm
      else
          _OUT << "\"" << VkStencilOp_map[obj] << "\"" << std::endl;
 }
-static void print_VkStencilOp(const VkStencilOp * obj, const std::string& str, bool commaNeeded) {
+static void print_VkStencilOp(const VkStencilOp * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4768,7 +3145,7 @@ static std::map<deUint64, std::string> VkLogicOp_map = {
     std::make_pair(14, "VK_LOGIC_OP_NAND"),
     std::make_pair(15, "VK_LOGIC_OP_SET"),
 };
-static void print_VkLogicOp(VkLogicOp obj, const std::string& str, bool commaNeeded) {
+static void print_VkLogicOp(VkLogicOp obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4776,7 +3153,7 @@ static void print_VkLogicOp(VkLogicOp obj, const std::string& str, bool commaNee
      else
          _OUT << "\"" << VkLogicOp_map[obj] << "\"" << std::endl;
 }
-static void print_VkLogicOp(const VkLogicOp * obj, const std::string& str, bool commaNeeded) {
+static void print_VkLogicOp(const VkLogicOp * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4795,7 +3172,7 @@ static std::map<deUint64, std::string> VkBorderColor_map = {
     std::make_pair(1000287003, "VK_BORDER_COLOR_FLOAT_CUSTOM_EXT"),
     std::make_pair(1000287004, "VK_BORDER_COLOR_INT_CUSTOM_EXT"),
 };
-static void print_VkBorderColor(VkBorderColor obj, const std::string& str, bool commaNeeded) {
+static void print_VkBorderColor(VkBorderColor obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4803,7 +3180,7 @@ static void print_VkBorderColor(VkBorderColor obj, const std::string& str, bool
      else
          _OUT << "\"" << VkBorderColor_map[obj] << "\"" << std::endl;
 }
-static void print_VkBorderColor(const VkBorderColor * obj, const std::string& str, bool commaNeeded) {
+static void print_VkBorderColor(const VkBorderColor * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4817,7 +3194,7 @@ static std::map<deUint64, std::string> VkFilter_map = {
     std::make_pair(1, "VK_FILTER_LINEAR"),
     std::make_pair(1000015000, "VK_FILTER_CUBIC_IMG"),
 };
-static void print_VkFilter(VkFilter obj, const std::string& str, bool commaNeeded) {
+static void print_VkFilter(VkFilter obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4825,7 +3202,7 @@ static void print_VkFilter(VkFilter obj, const std::string& str, bool commaNeede
      else
          _OUT << "\"" << VkFilter_map[obj] << "\"" << std::endl;
 }
-static void print_VkFilter(const VkFilter * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFilter(const VkFilter * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4842,7 +3219,7 @@ static std::map<deUint64, std::string> VkSamplerAddressMode_map = {
     std::make_pair(4, "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE"),
     std::make_pair(4, "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE"),
 };
-static void print_VkSamplerAddressMode(VkSamplerAddressMode obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerAddressMode(VkSamplerAddressMode obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4850,7 +3227,7 @@ static void print_VkSamplerAddressMode(VkSamplerAddressMode obj, const std::stri
      else
          _OUT << "\"" << VkSamplerAddressMode_map[obj] << "\"" << std::endl;
 }
-static void print_VkSamplerAddressMode(const VkSamplerAddressMode * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerAddressMode(const VkSamplerAddressMode * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4865,7 +3242,7 @@ static std::map<deUint64, std::string> VkSamplerCreateFlagBits_map = {
     std::make_pair(1ULL << 3, "VK_SAMPLER_CREATE_RESERVED_3_BIT_AMD"),
     std::make_pair(1ULL << 2, "VK_SAMPLER_CREATE_RESERVED_2_BIT_EXT"),
 };
-static void print_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4873,7 +3250,7 @@ static void print_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits obj, const std
      else
          _OUT << "\"" << VkSamplerCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkSamplerCreateFlagBits(const VkSamplerCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerCreateFlagBits(const VkSamplerCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4886,7 +3263,7 @@ static std::map<deUint64, std::string> VkSamplerMipmapMode_map = {
     std::make_pair(0, "VK_SAMPLER_MIPMAP_MODE_NEAREST"),
     std::make_pair(1, "VK_SAMPLER_MIPMAP_MODE_LINEAR"),
 };
-static void print_VkSamplerMipmapMode(VkSamplerMipmapMode obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerMipmapMode(VkSamplerMipmapMode obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4894,7 +3271,7 @@ static void print_VkSamplerMipmapMode(VkSamplerMipmapMode obj, const std::string
      else
          _OUT << "\"" << VkSamplerMipmapMode_map[obj] << "\"" << std::endl;
 }
-static void print_VkSamplerMipmapMode(const VkSamplerMipmapMode * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerMipmapMode(const VkSamplerMipmapMode * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4908,7 +3285,7 @@ static std::map<deUint64, std::string> VkDescriptorPoolCreateFlagBits_map = {
     std::make_pair(1ULL << 1, "VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT"),
     std::make_pair(1ULL << 2, "VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE"),
 };
-static void print_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4916,7 +3293,7 @@ static void print_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits
      else
          _OUT << "\"" << VkDescriptorPoolCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkDescriptorPoolCreateFlagBits(const VkDescriptorPoolCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorPoolCreateFlagBits(const VkDescriptorPoolCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4942,7 +3319,7 @@ static std::map<deUint64, std::string> VkDescriptorType_map = {
     std::make_pair(1000165000, "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV"),
     std::make_pair(1000351000, "VK_DESCRIPTOR_TYPE_MUTABLE_VALVE"),
 };
-static void print_VkDescriptorType(VkDescriptorType obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorType(VkDescriptorType obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4950,7 +3327,7 @@ static void print_VkDescriptorType(VkDescriptorType obj, const std::string& str,
      else
          _OUT << "\"" << VkDescriptorType_map[obj] << "\"" << std::endl;
 }
-static void print_VkDescriptorType(const VkDescriptorType * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorType(const VkDescriptorType * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4966,7 +3343,7 @@ static std::map<deUint64, std::string> VkDescriptorSetLayoutCreateFlagBits_map =
     std::make_pair(1ULL << 3, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_RESERVED_3_BIT_AMD"),
     std::make_pair(1ULL << 2, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE"),
 };
-static void print_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4974,7 +3351,7 @@ static void print_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreat
      else
          _OUT << "\"" << VkDescriptorSetLayoutCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkDescriptorSetLayoutCreateFlagBits(const VkDescriptorSetLayoutCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorSetLayoutCreateFlagBits(const VkDescriptorSetLayoutCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4986,7 +3363,7 @@ static void print_VkDescriptorSetLayoutCreateFlagBits(const VkDescriptorSetLayou
 static std::map<deUint64, std::string> VkAttachmentDescriptionFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT"),
 };
-static void print_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -4994,7 +3371,7 @@ static void print_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBit
      else
          _OUT << "\"" << VkAttachmentDescriptionFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkAttachmentDescriptionFlagBits(const VkAttachmentDescriptionFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkAttachmentDescriptionFlagBits(const VkAttachmentDescriptionFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5009,7 +3386,7 @@ static std::map<deUint64, std::string> VkAttachmentLoadOp_map = {
     std::make_pair(2, "VK_ATTACHMENT_LOAD_OP_DONT_CARE"),
     std::make_pair(1000400000, "VK_ATTACHMENT_LOAD_OP_NONE_EXT"),
 };
-static void print_VkAttachmentLoadOp(VkAttachmentLoadOp obj, const std::string& str, bool commaNeeded) {
+static void print_VkAttachmentLoadOp(VkAttachmentLoadOp obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5017,7 +3394,7 @@ static void print_VkAttachmentLoadOp(VkAttachmentLoadOp obj, const std::string&
      else
          _OUT << "\"" << VkAttachmentLoadOp_map[obj] << "\"" << std::endl;
 }
-static void print_VkAttachmentLoadOp(const VkAttachmentLoadOp * obj, const std::string& str, bool commaNeeded) {
+static void print_VkAttachmentLoadOp(const VkAttachmentLoadOp * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5031,7 +3408,7 @@ static std::map<deUint64, std::string> VkAttachmentStoreOp_map = {
     std::make_pair(1, "VK_ATTACHMENT_STORE_OP_DONT_CARE"),
     std::make_pair(1000301000, "VK_ATTACHMENT_STORE_OP_NONE_KHR"),
 };
-static void print_VkAttachmentStoreOp(VkAttachmentStoreOp obj, const std::string& str, bool commaNeeded) {
+static void print_VkAttachmentStoreOp(VkAttachmentStoreOp obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5039,7 +3416,7 @@ static void print_VkAttachmentStoreOp(VkAttachmentStoreOp obj, const std::string
      else
          _OUT << "\"" << VkAttachmentStoreOp_map[obj] << "\"" << std::endl;
 }
-static void print_VkAttachmentStoreOp(const VkAttachmentStoreOp * obj, const std::string& str, bool commaNeeded) {
+static void print_VkAttachmentStoreOp(const VkAttachmentStoreOp * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5053,7 +3430,7 @@ static std::map<deUint64, std::string> VkDependencyFlagBits_map = {
     std::make_pair(1ULL << 2, "VK_DEPENDENCY_DEVICE_GROUP_BIT"),
     std::make_pair(1ULL << 1, "VK_DEPENDENCY_VIEW_LOCAL_BIT"),
 };
-static void print_VkDependencyFlagBits(VkDependencyFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkDependencyFlagBits(VkDependencyFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5061,7 +3438,7 @@ static void print_VkDependencyFlagBits(VkDependencyFlagBits obj, const std::stri
      else
          _OUT << "\"" << VkDependencyFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkDependencyFlagBits(const VkDependencyFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDependencyFlagBits(const VkDependencyFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5073,7 +3450,7 @@ static void print_VkDependencyFlagBits(const VkDependencyFlagBits * obj, const s
 static std::map<deUint64, std::string> VkFramebufferCreateFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT"),
 };
-static void print_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5081,7 +3458,7 @@ static void print_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits obj, c
      else
          _OUT << "\"" << VkFramebufferCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkFramebufferCreateFlagBits(const VkFramebufferCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFramebufferCreateFlagBits(const VkFramebufferCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5096,7 +3473,7 @@ static std::map<deUint64, std::string> VkPipelineBindPoint_map = {
     std::make_pair(1000165000, "VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR"),
     std::make_pair(1000369003, "VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI"),
 };
-static void print_VkPipelineBindPoint(VkPipelineBindPoint obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineBindPoint(VkPipelineBindPoint obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5104,7 +3481,7 @@ static void print_VkPipelineBindPoint(VkPipelineBindPoint obj, const std::string
      else
          _OUT << "\"" << VkPipelineBindPoint_map[obj] << "\"" << std::endl;
 }
-static void print_VkPipelineBindPoint(const VkPipelineBindPoint * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineBindPoint(const VkPipelineBindPoint * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5117,7 +3494,7 @@ static std::map<deUint64, std::string> VkRenderPassCreateFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_RENDER_PASS_CREATE_RESERVED_0_BIT_KHR"),
     std::make_pair(1ULL << 1, "VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM"),
 };
-static void print_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5125,7 +3502,7 @@ static void print_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits obj, con
      else
          _OUT << "\"" << VkRenderPassCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkRenderPassCreateFlagBits(const VkRenderPassCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkRenderPassCreateFlagBits(const VkRenderPassCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5139,8 +3516,11 @@ static std::map<deUint64, std::string> VkSubpassDescriptionFlagBits_map = {
     std::make_pair(1ULL << 1, "VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX"),
     std::make_pair(1ULL << 2, "VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM"),
     std::make_pair(1ULL << 3, "VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM"),
+    std::make_pair(1ULL << 4, "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM"),
+    std::make_pair(1ULL << 5, "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM"),
+    std::make_pair(1ULL << 6, "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM"),
 };
-static void print_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5148,7 +3528,7 @@ static void print_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits obj,
      else
          _OUT << "\"" << VkSubpassDescriptionFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkSubpassDescriptionFlagBits(const VkSubpassDescriptionFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubpassDescriptionFlagBits(const VkSubpassDescriptionFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5162,7 +3542,7 @@ static std::map<deUint64, std::string> VkCommandPoolCreateFlagBits_map = {
     std::make_pair(1ULL << 1, "VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT"),
     std::make_pair(1ULL << 2, "VK_COMMAND_POOL_CREATE_PROTECTED_BIT"),
 };
-static void print_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5170,7 +3550,7 @@ static void print_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits obj, c
      else
          _OUT << "\"" << VkCommandPoolCreateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkCommandPoolCreateFlagBits(const VkCommandPoolCreateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandPoolCreateFlagBits(const VkCommandPoolCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5180,9 +3560,9 @@ static void print_VkCommandPoolCreateFlagBits(const VkCommandPoolCreateFlagBits
 }
 
 static std::map<deUint64, std::string> VkCommandPoolResetFlagBits_map = {
-    std::make_pair(1ULL << 0, "VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT"),
+    std::make_pair(1ULL << 1, "VK_COMMAND_POOL_RESET_RESERVED_1_BIT_COREAVI"),
 };
-static void print_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5190,7 +3570,7 @@ static void print_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits obj, con
      else
          _OUT << "\"" << VkCommandPoolResetFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkCommandPoolResetFlagBits(const VkCommandPoolResetFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandPoolResetFlagBits(const VkCommandPoolResetFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5203,7 +3583,7 @@ static std::map<deUint64, std::string> VkCommandBufferLevel_map = {
     std::make_pair(0, "VK_COMMAND_BUFFER_LEVEL_PRIMARY"),
     std::make_pair(1, "VK_COMMAND_BUFFER_LEVEL_SECONDARY"),
 };
-static void print_VkCommandBufferLevel(VkCommandBufferLevel obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandBufferLevel(VkCommandBufferLevel obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5211,7 +3591,7 @@ static void print_VkCommandBufferLevel(VkCommandBufferLevel obj, const std::stri
      else
          _OUT << "\"" << VkCommandBufferLevel_map[obj] << "\"" << std::endl;
 }
-static void print_VkCommandBufferLevel(const VkCommandBufferLevel * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandBufferLevel(const VkCommandBufferLevel * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5225,7 +3605,7 @@ static std::map<deUint64, std::string> VkCommandBufferUsageFlagBits_map = {
     std::make_pair(1ULL << 1, "VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT"),
     std::make_pair(1ULL << 2, "VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT"),
 };
-static void print_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5233,7 +3613,7 @@ static void print_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits obj,
      else
          _OUT << "\"" << VkCommandBufferUsageFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkCommandBufferUsageFlagBits(const VkCommandBufferUsageFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandBufferUsageFlagBits(const VkCommandBufferUsageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5245,7 +3625,7 @@ static void print_VkCommandBufferUsageFlagBits(const VkCommandBufferUsageFlagBit
 static std::map<deUint64, std::string> VkQueryControlFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_QUERY_CONTROL_PRECISE_BIT"),
 };
-static void print_VkQueryControlFlagBits(VkQueryControlFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryControlFlagBits(VkQueryControlFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5253,7 +3633,7 @@ static void print_VkQueryControlFlagBits(VkQueryControlFlagBits obj, const std::
      else
          _OUT << "\"" << VkQueryControlFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkQueryControlFlagBits(const VkQueryControlFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryControlFlagBits(const VkQueryControlFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5265,7 +3645,7 @@ static void print_VkQueryControlFlagBits(const VkQueryControlFlagBits * obj, con
 static std::map<deUint64, std::string> VkCommandBufferResetFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT"),
 };
-static void print_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5273,7 +3653,7 @@ static void print_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits obj,
      else
          _OUT << "\"" << VkCommandBufferResetFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkCommandBufferResetFlagBits(const VkCommandBufferResetFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandBufferResetFlagBits(const VkCommandBufferResetFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5288,7 +3668,7 @@ static std::map<deUint64, std::string> VkIndexType_map = {
     std::make_pair(1000165000, "VK_INDEX_TYPE_NONE_KHR"),
     std::make_pair(1000265000, "VK_INDEX_TYPE_UINT8_EXT"),
 };
-static void print_VkIndexType(VkIndexType obj, const std::string& str, bool commaNeeded) {
+static void print_VkIndexType(VkIndexType obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5296,7 +3676,7 @@ static void print_VkIndexType(VkIndexType obj, const std::string& str, bool comm
      else
          _OUT << "\"" << VkIndexType_map[obj] << "\"" << std::endl;
 }
-static void print_VkIndexType(const VkIndexType * obj, const std::string& str, bool commaNeeded) {
+static void print_VkIndexType(const VkIndexType * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5310,7 +3690,7 @@ static std::map<deUint64, std::string> VkStencilFaceFlagBits_map = {
     std::make_pair(1ULL << 1, "VK_STENCIL_FACE_BACK_BIT"),
     std::make_pair(0x00000003, "VK_STENCIL_FACE_FRONT_AND_BACK"),
 };
-static void print_VkStencilFaceFlagBits(VkStencilFaceFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkStencilFaceFlagBits(VkStencilFaceFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5318,7 +3698,7 @@ static void print_VkStencilFaceFlagBits(VkStencilFaceFlagBits obj, const std::st
      else
          _OUT << "\"" << VkStencilFaceFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkStencilFaceFlagBits(const VkStencilFaceFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkStencilFaceFlagBits(const VkStencilFaceFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5331,7 +3711,7 @@ static std::map<deUint64, std::string> VkSubpassContents_map = {
     std::make_pair(0, "VK_SUBPASS_CONTENTS_INLINE"),
     std::make_pair(1, "VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS"),
 };
-static void print_VkSubpassContents(VkSubpassContents obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubpassContents(VkSubpassContents obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5339,7 +3719,7 @@ static void print_VkSubpassContents(VkSubpassContents obj, const std::string& st
      else
          _OUT << "\"" << VkSubpassContents_map[obj] << "\"" << std::endl;
 }
-static void print_VkSubpassContents(const VkSubpassContents * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubpassContents(const VkSubpassContents * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -5348,7 +3728,7 @@ static void print_VkSubpassContents(const VkSubpassContents * obj, const std::st
          _OUT << "\"" << VkSubpassContents_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkAccessFlags(VkAccessFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkAccessFlags(VkAccessFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5370,7 +3750,7 @@ static void print_VkAccessFlags(VkAccessFlags obj, const std::string& str, bool
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkAccessFlags(const VkAccessFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkAccessFlags(const VkAccessFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5393,7 +3773,7 @@ static void print_VkAccessFlags(const VkAccessFlags * obj, const std::string& st
      _OUT << std::endl;
 }
 
-static void print_VkImageAspectFlags(VkImageAspectFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageAspectFlags(VkImageAspectFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5415,7 +3795,7 @@ static void print_VkImageAspectFlags(VkImageAspectFlags obj, const std::string&
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkImageAspectFlags(const VkImageAspectFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageAspectFlags(const VkImageAspectFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5438,7 +3818,7 @@ static void print_VkImageAspectFlags(const VkImageAspectFlags * obj, const std::
      _OUT << std::endl;
 }
 
-static void print_VkFormatFeatureFlags(VkFormatFeatureFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkFormatFeatureFlags(VkFormatFeatureFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5460,7 +3840,7 @@ static void print_VkFormatFeatureFlags(VkFormatFeatureFlags obj, const std::stri
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkFormatFeatureFlags(const VkFormatFeatureFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFormatFeatureFlags(const VkFormatFeatureFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5483,7 +3863,7 @@ static void print_VkFormatFeatureFlags(const VkFormatFeatureFlags * obj, const s
      _OUT << std::endl;
 }
 
-static void print_VkImageCreateFlags(VkImageCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageCreateFlags(VkImageCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5505,7 +3885,7 @@ static void print_VkImageCreateFlags(VkImageCreateFlags obj, const std::string&
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkImageCreateFlags(const VkImageCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageCreateFlags(const VkImageCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5528,7 +3908,7 @@ static void print_VkImageCreateFlags(const VkImageCreateFlags * obj, const std::
      _OUT << std::endl;
 }
 
-static void print_VkSampleCountFlags(VkSampleCountFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkSampleCountFlags(VkSampleCountFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5550,7 +3930,7 @@ static void print_VkSampleCountFlags(VkSampleCountFlags obj, const std::string&
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkSampleCountFlags(const VkSampleCountFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSampleCountFlags(const VkSampleCountFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5573,7 +3953,7 @@ static void print_VkSampleCountFlags(const VkSampleCountFlags * obj, const std::
      _OUT << std::endl;
 }
 
-static void print_VkImageUsageFlags(VkImageUsageFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageUsageFlags(VkImageUsageFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5595,7 +3975,7 @@ static void print_VkImageUsageFlags(VkImageUsageFlags obj, const std::string& st
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkImageUsageFlags(const VkImageUsageFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageUsageFlags(const VkImageUsageFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5618,14 +3998,14 @@ static void print_VkImageUsageFlags(const VkImageUsageFlags * obj, const std::st
      _OUT << std::endl;
 }
 
-static void print_VkInstanceCreateFlags(VkInstanceCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkInstanceCreateFlags(VkInstanceCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkInstanceCreateFlags(const VkInstanceCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkInstanceCreateFlags(const VkInstanceCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -5633,7 +4013,7 @@ static void print_VkInstanceCreateFlags(const VkInstanceCreateFlags * obj, const
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkMemoryHeapFlags(VkMemoryHeapFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryHeapFlags(VkMemoryHeapFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5655,7 +4035,7 @@ static void print_VkMemoryHeapFlags(VkMemoryHeapFlags obj, const std::string& st
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkMemoryHeapFlags(const VkMemoryHeapFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryHeapFlags(const VkMemoryHeapFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5678,7 +4058,7 @@ static void print_VkMemoryHeapFlags(const VkMemoryHeapFlags * obj, const std::st
      _OUT << std::endl;
 }
 
-static void print_VkMemoryPropertyFlags(VkMemoryPropertyFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryPropertyFlags(VkMemoryPropertyFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5700,7 +4080,7 @@ static void print_VkMemoryPropertyFlags(VkMemoryPropertyFlags obj, const std::st
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkMemoryPropertyFlags(const VkMemoryPropertyFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryPropertyFlags(const VkMemoryPropertyFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5723,7 +4103,7 @@ static void print_VkMemoryPropertyFlags(const VkMemoryPropertyFlags * obj, const
      _OUT << std::endl;
 }
 
-static void print_VkQueueFlags(VkQueueFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueueFlags(VkQueueFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5745,7 +4125,7 @@ static void print_VkQueueFlags(VkQueueFlags obj, const std::string& str, bool co
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkQueueFlags(const VkQueueFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueueFlags(const VkQueueFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5768,14 +4148,14 @@ static void print_VkQueueFlags(const VkQueueFlags * obj, const std::string& str,
      _OUT << std::endl;
 }
 
-static void print_VkDeviceCreateFlags(VkDeviceCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceCreateFlags(VkDeviceCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkDeviceCreateFlags(const VkDeviceCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceCreateFlags(const VkDeviceCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -5783,7 +4163,7 @@ static void print_VkDeviceCreateFlags(const VkDeviceCreateFlags * obj, const std
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5805,7 +4185,7 @@ static void print_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFlags obj, const s
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkDeviceQueueCreateFlags(const VkDeviceQueueCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceQueueCreateFlags(const VkDeviceQueueCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5828,7 +4208,7 @@ static void print_VkDeviceQueueCreateFlags(const VkDeviceQueueCreateFlags * obj,
      _OUT << std::endl;
 }
 
-static void print_VkPipelineStageFlags(VkPipelineStageFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineStageFlags(VkPipelineStageFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5850,7 +4230,7 @@ static void print_VkPipelineStageFlags(VkPipelineStageFlags obj, const std::stri
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkPipelineStageFlags(const VkPipelineStageFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineStageFlags(const VkPipelineStageFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5873,14 +4253,14 @@ static void print_VkPipelineStageFlags(const VkPipelineStageFlags * obj, const s
      _OUT << std::endl;
 }
 
-static void print_VkMemoryMapFlags(VkMemoryMapFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryMapFlags(VkMemoryMapFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkMemoryMapFlags(const VkMemoryMapFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryMapFlags(const VkMemoryMapFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -5888,7 +4268,7 @@ static void print_VkMemoryMapFlags(const VkMemoryMapFlags * obj, const std::stri
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkFenceCreateFlags(VkFenceCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkFenceCreateFlags(VkFenceCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5910,7 +4290,7 @@ static void print_VkFenceCreateFlags(VkFenceCreateFlags obj, const std::string&
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkFenceCreateFlags(const VkFenceCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFenceCreateFlags(const VkFenceCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5933,14 +4313,14 @@ static void print_VkFenceCreateFlags(const VkFenceCreateFlags * obj, const std::
      _OUT << std::endl;
 }
 
-static void print_VkSemaphoreCreateFlags(VkSemaphoreCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphoreCreateFlags(VkSemaphoreCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkSemaphoreCreateFlags(const VkSemaphoreCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphoreCreateFlags(const VkSemaphoreCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -5948,7 +4328,7 @@ static void print_VkSemaphoreCreateFlags(const VkSemaphoreCreateFlags * obj, con
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkEventCreateFlags(VkEventCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkEventCreateFlags(VkEventCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5970,7 +4350,7 @@ static void print_VkEventCreateFlags(VkEventCreateFlags obj, const std::string&
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkEventCreateFlags(const VkEventCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkEventCreateFlags(const VkEventCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -5993,7 +4373,7 @@ static void print_VkEventCreateFlags(const VkEventCreateFlags * obj, const std::
      _OUT << std::endl;
 }
 
-static void print_VkQueryPipelineStatisticFlags(VkQueryPipelineStatisticFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryPipelineStatisticFlags(VkQueryPipelineStatisticFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6015,7 +4395,7 @@ static void print_VkQueryPipelineStatisticFlags(VkQueryPipelineStatisticFlags ob
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkQueryPipelineStatisticFlags(const VkQueryPipelineStatisticFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryPipelineStatisticFlags(const VkQueryPipelineStatisticFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6038,14 +4418,14 @@ static void print_VkQueryPipelineStatisticFlags(const VkQueryPipelineStatisticFl
      _OUT << std::endl;
 }
 
-static void print_VkQueryPoolCreateFlags(VkQueryPoolCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryPoolCreateFlags(VkQueryPoolCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkQueryPoolCreateFlags(const VkQueryPoolCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryPoolCreateFlags(const VkQueryPoolCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -6053,7 +4433,7 @@ static void print_VkQueryPoolCreateFlags(const VkQueryPoolCreateFlags * obj, con
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkQueryResultFlags(VkQueryResultFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryResultFlags(VkQueryResultFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6075,7 +4455,7 @@ static void print_VkQueryResultFlags(VkQueryResultFlags obj, const std::string&
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkQueryResultFlags(const VkQueryResultFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryResultFlags(const VkQueryResultFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6098,7 +4478,7 @@ static void print_VkQueryResultFlags(const VkQueryResultFlags * obj, const std::
      _OUT << std::endl;
 }
 
-static void print_VkBufferCreateFlags(VkBufferCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkBufferCreateFlags(VkBufferCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6120,7 +4500,7 @@ static void print_VkBufferCreateFlags(VkBufferCreateFlags obj, const std::string
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkBufferCreateFlags(const VkBufferCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkBufferCreateFlags(const VkBufferCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6143,7 +4523,7 @@ static void print_VkBufferCreateFlags(const VkBufferCreateFlags * obj, const std
      _OUT << std::endl;
 }
 
-static void print_VkBufferUsageFlags(VkBufferUsageFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkBufferUsageFlags(VkBufferUsageFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6165,7 +4545,7 @@ static void print_VkBufferUsageFlags(VkBufferUsageFlags obj, const std::string&
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkBufferUsageFlags(const VkBufferUsageFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkBufferUsageFlags(const VkBufferUsageFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6188,14 +4568,14 @@ static void print_VkBufferUsageFlags(const VkBufferUsageFlags * obj, const std::
      _OUT << std::endl;
 }
 
-static void print_VkBufferViewCreateFlags(VkBufferViewCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkBufferViewCreateFlags(VkBufferViewCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkBufferViewCreateFlags(const VkBufferViewCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkBufferViewCreateFlags(const VkBufferViewCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -6203,7 +4583,7 @@ static void print_VkBufferViewCreateFlags(const VkBufferViewCreateFlags * obj, c
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkImageViewCreateFlags(VkImageViewCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageViewCreateFlags(VkImageViewCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6225,7 +4605,7 @@ static void print_VkImageViewCreateFlags(VkImageViewCreateFlags obj, const std::
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkImageViewCreateFlags(const VkImageViewCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkImageViewCreateFlags(const VkImageViewCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6248,7 +4628,7 @@ static void print_VkImageViewCreateFlags(const VkImageViewCreateFlags * obj, con
      _OUT << std::endl;
 }
 
-static void print_VkPipelineCacheCreateFlags(VkPipelineCacheCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCacheCreateFlags(VkPipelineCacheCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6270,7 +4650,7 @@ static void print_VkPipelineCacheCreateFlags(VkPipelineCacheCreateFlags obj, con
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkPipelineCacheCreateFlags(const VkPipelineCacheCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCacheCreateFlags(const VkPipelineCacheCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6293,7 +4673,7 @@ static void print_VkPipelineCacheCreateFlags(const VkPipelineCacheCreateFlags *
      _OUT << std::endl;
 }
 
-static void print_VkColorComponentFlags(VkColorComponentFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkColorComponentFlags(VkColorComponentFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6315,7 +4695,7 @@ static void print_VkColorComponentFlags(VkColorComponentFlags obj, const std::st
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkColorComponentFlags(const VkColorComponentFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkColorComponentFlags(const VkColorComponentFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6338,7 +4718,7 @@ static void print_VkColorComponentFlags(const VkColorComponentFlags * obj, const
      _OUT << std::endl;
 }
 
-static void print_VkPipelineCreateFlags(VkPipelineCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCreateFlags(VkPipelineCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6360,7 +4740,7 @@ static void print_VkPipelineCreateFlags(VkPipelineCreateFlags obj, const std::st
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkPipelineCreateFlags(const VkPipelineCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCreateFlags(const VkPipelineCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6383,7 +4763,7 @@ static void print_VkPipelineCreateFlags(const VkPipelineCreateFlags * obj, const
      _OUT << std::endl;
 }
 
-static void print_VkPipelineShaderStageCreateFlags(VkPipelineShaderStageCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineShaderStageCreateFlags(VkPipelineShaderStageCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6405,7 +4785,7 @@ static void print_VkPipelineShaderStageCreateFlags(VkPipelineShaderStageCreateFl
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkPipelineShaderStageCreateFlags(const VkPipelineShaderStageCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineShaderStageCreateFlags(const VkPipelineShaderStageCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6428,7 +4808,7 @@ static void print_VkPipelineShaderStageCreateFlags(const VkPipelineShaderStageCr
      _OUT << std::endl;
 }
 
-static void print_VkCullModeFlags(VkCullModeFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkCullModeFlags(VkCullModeFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6450,7 +4830,7 @@ static void print_VkCullModeFlags(VkCullModeFlags obj, const std::string& str, b
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkCullModeFlags(const VkCullModeFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCullModeFlags(const VkCullModeFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6473,14 +4853,14 @@ static void print_VkCullModeFlags(const VkCullModeFlags * obj, const std::string
      _OUT << std::endl;
 }
 
-static void print_VkPipelineVertexInputStateCreateFlags(VkPipelineVertexInputStateCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineVertexInputStateCreateFlags(VkPipelineVertexInputStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineVertexInputStateCreateFlags(const VkPipelineVertexInputStateCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineVertexInputStateCreateFlags(const VkPipelineVertexInputStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -6488,14 +4868,14 @@ static void print_VkPipelineVertexInputStateCreateFlags(const VkPipelineVertexIn
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkPipelineInputAssemblyStateCreateFlags(VkPipelineInputAssemblyStateCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineInputAssemblyStateCreateFlags(VkPipelineInputAssemblyStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineInputAssemblyStateCreateFlags(const VkPipelineInputAssemblyStateCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineInputAssemblyStateCreateFlags(const VkPipelineInputAssemblyStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -6503,14 +4883,14 @@ static void print_VkPipelineInputAssemblyStateCreateFlags(const VkPipelineInputA
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkPipelineTessellationStateCreateFlags(VkPipelineTessellationStateCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineTessellationStateCreateFlags(VkPipelineTessellationStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineTessellationStateCreateFlags(const VkPipelineTessellationStateCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineTessellationStateCreateFlags(const VkPipelineTessellationStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -6518,14 +4898,14 @@ static void print_VkPipelineTessellationStateCreateFlags(const VkPipelineTessell
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkPipelineViewportStateCreateFlags(VkPipelineViewportStateCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineViewportStateCreateFlags(VkPipelineViewportStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineViewportStateCreateFlags(const VkPipelineViewportStateCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineViewportStateCreateFlags(const VkPipelineViewportStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -6533,14 +4913,14 @@ static void print_VkPipelineViewportStateCreateFlags(const VkPipelineViewportSta
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkPipelineRasterizationStateCreateFlags(VkPipelineRasterizationStateCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineRasterizationStateCreateFlags(VkPipelineRasterizationStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineRasterizationStateCreateFlags(const VkPipelineRasterizationStateCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineRasterizationStateCreateFlags(const VkPipelineRasterizationStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -6548,14 +4928,14 @@ static void print_VkPipelineRasterizationStateCreateFlags(const VkPipelineRaster
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkPipelineMultisampleStateCreateFlags(VkPipelineMultisampleStateCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineMultisampleStateCreateFlags(VkPipelineMultisampleStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineMultisampleStateCreateFlags(const VkPipelineMultisampleStateCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineMultisampleStateCreateFlags(const VkPipelineMultisampleStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -6563,14 +4943,14 @@ static void print_VkPipelineMultisampleStateCreateFlags(const VkPipelineMultisam
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkPipelineDepthStencilStateCreateFlags(VkPipelineDepthStencilStateCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineDepthStencilStateCreateFlags(VkPipelineDepthStencilStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineDepthStencilStateCreateFlags(const VkPipelineDepthStencilStateCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineDepthStencilStateCreateFlags(const VkPipelineDepthStencilStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -6578,14 +4958,14 @@ static void print_VkPipelineDepthStencilStateCreateFlags(const VkPipelineDepthSt
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkPipelineColorBlendStateCreateFlags(VkPipelineColorBlendStateCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineColorBlendStateCreateFlags(VkPipelineColorBlendStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineColorBlendStateCreateFlags(const VkPipelineColorBlendStateCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineColorBlendStateCreateFlags(const VkPipelineColorBlendStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -6593,14 +4973,14 @@ static void print_VkPipelineColorBlendStateCreateFlags(const VkPipelineColorBlen
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkPipelineDynamicStateCreateFlags(VkPipelineDynamicStateCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineDynamicStateCreateFlags(VkPipelineDynamicStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineDynamicStateCreateFlags(const VkPipelineDynamicStateCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineDynamicStateCreateFlags(const VkPipelineDynamicStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -6608,14 +4988,14 @@ static void print_VkPipelineDynamicStateCreateFlags(const VkPipelineDynamicState
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkPipelineLayoutCreateFlags(VkPipelineLayoutCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineLayoutCreateFlags(VkPipelineLayoutCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineLayoutCreateFlags(const VkPipelineLayoutCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineLayoutCreateFlags(const VkPipelineLayoutCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -6623,7 +5003,7 @@ static void print_VkPipelineLayoutCreateFlags(const VkPipelineLayoutCreateFlags
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkShaderStageFlags(VkShaderStageFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkShaderStageFlags(VkShaderStageFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6645,7 +5025,7 @@ static void print_VkShaderStageFlags(VkShaderStageFlags obj, const std::string&
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkShaderStageFlags(const VkShaderStageFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkShaderStageFlags(const VkShaderStageFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6668,7 +5048,7 @@ static void print_VkShaderStageFlags(const VkShaderStageFlags * obj, const std::
      _OUT << std::endl;
 }
 
-static void print_VkSamplerCreateFlags(VkSamplerCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerCreateFlags(VkSamplerCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6690,7 +5070,7 @@ static void print_VkSamplerCreateFlags(VkSamplerCreateFlags obj, const std::stri
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkSamplerCreateFlags(const VkSamplerCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerCreateFlags(const VkSamplerCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6713,7 +5093,7 @@ static void print_VkSamplerCreateFlags(const VkSamplerCreateFlags * obj, const s
      _OUT << std::endl;
 }
 
-static void print_VkDescriptorPoolCreateFlags(VkDescriptorPoolCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorPoolCreateFlags(VkDescriptorPoolCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6735,7 +5115,7 @@ static void print_VkDescriptorPoolCreateFlags(VkDescriptorPoolCreateFlags obj, c
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkDescriptorPoolCreateFlags(const VkDescriptorPoolCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorPoolCreateFlags(const VkDescriptorPoolCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6758,14 +5138,14 @@ static void print_VkDescriptorPoolCreateFlags(const VkDescriptorPoolCreateFlags
      _OUT << std::endl;
 }
 
-static void print_VkDescriptorPoolResetFlags(VkDescriptorPoolResetFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorPoolResetFlags(VkDescriptorPoolResetFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkDescriptorPoolResetFlags(const VkDescriptorPoolResetFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorPoolResetFlags(const VkDescriptorPoolResetFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -6773,7 +5153,7 @@ static void print_VkDescriptorPoolResetFlags(const VkDescriptorPoolResetFlags *
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkDescriptorSetLayoutCreateFlags(VkDescriptorSetLayoutCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorSetLayoutCreateFlags(VkDescriptorSetLayoutCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6795,7 +5175,7 @@ static void print_VkDescriptorSetLayoutCreateFlags(VkDescriptorSetLayoutCreateFl
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkDescriptorSetLayoutCreateFlags(const VkDescriptorSetLayoutCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorSetLayoutCreateFlags(const VkDescriptorSetLayoutCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6818,7 +5198,7 @@ static void print_VkDescriptorSetLayoutCreateFlags(const VkDescriptorSetLayoutCr
      _OUT << std::endl;
 }
 
-static void print_VkAttachmentDescriptionFlags(VkAttachmentDescriptionFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkAttachmentDescriptionFlags(VkAttachmentDescriptionFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6840,7 +5220,7 @@ static void print_VkAttachmentDescriptionFlags(VkAttachmentDescriptionFlags obj,
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkAttachmentDescriptionFlags(const VkAttachmentDescriptionFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkAttachmentDescriptionFlags(const VkAttachmentDescriptionFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6863,7 +5243,7 @@ static void print_VkAttachmentDescriptionFlags(const VkAttachmentDescriptionFlag
      _OUT << std::endl;
 }
 
-static void print_VkDependencyFlags(VkDependencyFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkDependencyFlags(VkDependencyFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6885,7 +5265,7 @@ static void print_VkDependencyFlags(VkDependencyFlags obj, const std::string& st
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkDependencyFlags(const VkDependencyFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDependencyFlags(const VkDependencyFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6908,7 +5288,7 @@ static void print_VkDependencyFlags(const VkDependencyFlags * obj, const std::st
      _OUT << std::endl;
 }
 
-static void print_VkFramebufferCreateFlags(VkFramebufferCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkFramebufferCreateFlags(VkFramebufferCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6930,7 +5310,7 @@ static void print_VkFramebufferCreateFlags(VkFramebufferCreateFlags obj, const s
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkFramebufferCreateFlags(const VkFramebufferCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFramebufferCreateFlags(const VkFramebufferCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6953,7 +5333,7 @@ static void print_VkFramebufferCreateFlags(const VkFramebufferCreateFlags * obj,
      _OUT << std::endl;
 }
 
-static void print_VkRenderPassCreateFlags(VkRenderPassCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkRenderPassCreateFlags(VkRenderPassCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6975,7 +5355,7 @@ static void print_VkRenderPassCreateFlags(VkRenderPassCreateFlags obj, const std
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkRenderPassCreateFlags(const VkRenderPassCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkRenderPassCreateFlags(const VkRenderPassCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -6998,7 +5378,7 @@ static void print_VkRenderPassCreateFlags(const VkRenderPassCreateFlags * obj, c
      _OUT << std::endl;
 }
 
-static void print_VkSubpassDescriptionFlags(VkSubpassDescriptionFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubpassDescriptionFlags(VkSubpassDescriptionFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7020,7 +5400,7 @@ static void print_VkSubpassDescriptionFlags(VkSubpassDescriptionFlags obj, const
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkSubpassDescriptionFlags(const VkSubpassDescriptionFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubpassDescriptionFlags(const VkSubpassDescriptionFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7043,7 +5423,7 @@ static void print_VkSubpassDescriptionFlags(const VkSubpassDescriptionFlags * ob
      _OUT << std::endl;
 }
 
-static void print_VkCommandPoolCreateFlags(VkCommandPoolCreateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandPoolCreateFlags(VkCommandPoolCreateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7065,7 +5445,7 @@ static void print_VkCommandPoolCreateFlags(VkCommandPoolCreateFlags obj, const s
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkCommandPoolCreateFlags(const VkCommandPoolCreateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandPoolCreateFlags(const VkCommandPoolCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7088,7 +5468,7 @@ static void print_VkCommandPoolCreateFlags(const VkCommandPoolCreateFlags * obj,
      _OUT << std::endl;
 }
 
-static void print_VkCommandPoolResetFlags(VkCommandPoolResetFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandPoolResetFlags(VkCommandPoolResetFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7110,7 +5490,7 @@ static void print_VkCommandPoolResetFlags(VkCommandPoolResetFlags obj, const std
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkCommandPoolResetFlags(const VkCommandPoolResetFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandPoolResetFlags(const VkCommandPoolResetFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7133,7 +5513,7 @@ static void print_VkCommandPoolResetFlags(const VkCommandPoolResetFlags * obj, c
      _OUT << std::endl;
 }
 
-static void print_VkCommandBufferUsageFlags(VkCommandBufferUsageFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandBufferUsageFlags(VkCommandBufferUsageFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7155,7 +5535,7 @@ static void print_VkCommandBufferUsageFlags(VkCommandBufferUsageFlags obj, const
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkCommandBufferUsageFlags(const VkCommandBufferUsageFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandBufferUsageFlags(const VkCommandBufferUsageFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7178,7 +5558,7 @@ static void print_VkCommandBufferUsageFlags(const VkCommandBufferUsageFlags * ob
      _OUT << std::endl;
 }
 
-static void print_VkQueryControlFlags(VkQueryControlFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryControlFlags(VkQueryControlFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7200,7 +5580,7 @@ static void print_VkQueryControlFlags(VkQueryControlFlags obj, const std::string
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkQueryControlFlags(const VkQueryControlFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueryControlFlags(const VkQueryControlFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7223,7 +5603,7 @@ static void print_VkQueryControlFlags(const VkQueryControlFlags * obj, const std
      _OUT << std::endl;
 }
 
-static void print_VkCommandBufferResetFlags(VkCommandBufferResetFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandBufferResetFlags(VkCommandBufferResetFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7245,7 +5625,7 @@ static void print_VkCommandBufferResetFlags(VkCommandBufferResetFlags obj, const
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkCommandBufferResetFlags(const VkCommandBufferResetFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCommandBufferResetFlags(const VkCommandBufferResetFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7268,7 +5648,7 @@ static void print_VkCommandBufferResetFlags(const VkCommandBufferResetFlags * ob
      _OUT << std::endl;
 }
 
-static void print_VkStencilFaceFlags(VkStencilFaceFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkStencilFaceFlags(VkStencilFaceFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7290,7 +5670,7 @@ static void print_VkStencilFaceFlags(VkStencilFaceFlags obj, const std::string&
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkStencilFaceFlags(const VkStencilFaceFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkStencilFaceFlags(const VkStencilFaceFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -7313,7 +5693,7 @@ static void print_VkStencilFaceFlags(const VkStencilFaceFlags * obj, const std::
      _OUT << std::endl;
 }
 
-static void print_VkExtent2D(VkExtent2D obj, const std::string& s, bool commaNeeded) {
+static void print_VkExtent2D(VkExtent2D obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7329,7 +5709,7 @@ static void print_VkExtent2D(VkExtent2D obj, const std::string& s, bool commaNee
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkExtent2D(const VkExtent2D * obj, const std::string& s, bool commaNeeded) {
+static void print_VkExtent2D(const VkExtent2D * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7346,7 +5726,7 @@ static void print_VkExtent2D(const VkExtent2D * obj, const std::string& s, bool
          _OUT << "}" << std::endl;
 }
 
-static void print_VkExtent3D(VkExtent3D obj, const std::string& s, bool commaNeeded) {
+static void print_VkExtent3D(VkExtent3D obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7364,7 +5744,7 @@ static void print_VkExtent3D(VkExtent3D obj, const std::string& s, bool commaNee
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkExtent3D(const VkExtent3D * obj, const std::string& s, bool commaNeeded) {
+static void print_VkExtent3D(const VkExtent3D * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7383,7 +5763,7 @@ static void print_VkExtent3D(const VkExtent3D * obj, const std::string& s, bool
          _OUT << "}" << std::endl;
 }
 
-static void print_VkOffset2D(VkOffset2D obj, const std::string& s, bool commaNeeded) {
+static void print_VkOffset2D(VkOffset2D obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7399,7 +5779,7 @@ static void print_VkOffset2D(VkOffset2D obj, const std::string& s, bool commaNee
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkOffset2D(const VkOffset2D * obj, const std::string& s, bool commaNeeded) {
+static void print_VkOffset2D(const VkOffset2D * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7416,7 +5796,7 @@ static void print_VkOffset2D(const VkOffset2D * obj, const std::string& s, bool
          _OUT << "}" << std::endl;
 }
 
-static void print_VkOffset3D(VkOffset3D obj, const std::string& s, bool commaNeeded) {
+static void print_VkOffset3D(VkOffset3D obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7434,7 +5814,7 @@ static void print_VkOffset3D(VkOffset3D obj, const std::string& s, bool commaNee
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkOffset3D(const VkOffset3D * obj, const std::string& s, bool commaNeeded) {
+static void print_VkOffset3D(const VkOffset3D * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7453,7 +5833,7 @@ static void print_VkOffset3D(const VkOffset3D * obj, const std::string& s, bool
          _OUT << "}" << std::endl;
 }
 
-static void print_VkRect2D(VkRect2D obj, const std::string& s, bool commaNeeded) {
+static void print_VkRect2D(VkRect2D obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7477,7 +5857,7 @@ static void print_VkRect2D(VkRect2D obj, const std::string& s, bool commaNeeded)
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkRect2D(const VkRect2D * obj, const std::string& s, bool commaNeeded) {
+static void print_VkRect2D(const VkRect2D * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7502,7 +5882,7 @@ static void print_VkRect2D(const VkRect2D * obj, const std::string& s, bool comm
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBaseInStructure(VkBaseInStructure obj, const std::string& s, bool commaNeeded) {
+static void print_VkBaseInStructure(VkBaseInStructure obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7523,7 +5903,7 @@ static void print_VkBaseInStructure(VkBaseInStructure obj, const std::string& s,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBaseInStructure(const VkBaseInStructure * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBaseInStructure(const VkBaseInStructure * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7545,7 +5925,7 @@ static void print_VkBaseInStructure(const VkBaseInStructure * obj, const std::st
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBaseOutStructure(VkBaseOutStructure obj, const std::string& s, bool commaNeeded) {
+static void print_VkBaseOutStructure(VkBaseOutStructure obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7566,7 +5946,7 @@ static void print_VkBaseOutStructure(VkBaseOutStructure obj, const std::string&
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBaseOutStructure(const VkBaseOutStructure * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBaseOutStructure(const VkBaseOutStructure * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7588,7 +5968,7 @@ static void print_VkBaseOutStructure(const VkBaseOutStructure * obj, const std::
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBufferMemoryBarrier(VkBufferMemoryBarrier obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferMemoryBarrier(VkBufferMemoryBarrier obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7624,7 +6004,7 @@ static void print_VkBufferMemoryBarrier(VkBufferMemoryBarrier obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBufferMemoryBarrier(const VkBufferMemoryBarrier * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferMemoryBarrier(const VkBufferMemoryBarrier * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7661,7 +6041,7 @@ static void print_VkBufferMemoryBarrier(const VkBufferMemoryBarrier * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDispatchIndirectCommand(VkDispatchIndirectCommand obj, const std::string& s, bool commaNeeded) {
+static void print_VkDispatchIndirectCommand(VkDispatchIndirectCommand obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7679,7 +6059,7 @@ static void print_VkDispatchIndirectCommand(VkDispatchIndirectCommand obj, const
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDispatchIndirectCommand(const VkDispatchIndirectCommand * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDispatchIndirectCommand(const VkDispatchIndirectCommand * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7698,7 +6078,7 @@ static void print_VkDispatchIndirectCommand(const VkDispatchIndirectCommand * ob
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDrawIndexedIndirectCommand(VkDrawIndexedIndirectCommand obj, const std::string& s, bool commaNeeded) {
+static void print_VkDrawIndexedIndirectCommand(VkDrawIndexedIndirectCommand obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7720,7 +6100,7 @@ static void print_VkDrawIndexedIndirectCommand(VkDrawIndexedIndirectCommand obj,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDrawIndexedIndirectCommand(const VkDrawIndexedIndirectCommand * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDrawIndexedIndirectCommand(const VkDrawIndexedIndirectCommand * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7743,7 +6123,7 @@ static void print_VkDrawIndexedIndirectCommand(const VkDrawIndexedIndirectComman
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDrawIndirectCommand(VkDrawIndirectCommand obj, const std::string& s, bool commaNeeded) {
+static void print_VkDrawIndirectCommand(VkDrawIndirectCommand obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7763,7 +6143,7 @@ static void print_VkDrawIndirectCommand(VkDrawIndirectCommand obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDrawIndirectCommand(const VkDrawIndirectCommand * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDrawIndirectCommand(const VkDrawIndirectCommand * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7784,7 +6164,7 @@ static void print_VkDrawIndirectCommand(const VkDrawIndirectCommand * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageSubresourceRange(VkImageSubresourceRange obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageSubresourceRange(VkImageSubresourceRange obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7806,7 +6186,7 @@ static void print_VkImageSubresourceRange(VkImageSubresourceRange obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageSubresourceRange(const VkImageSubresourceRange * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageSubresourceRange(const VkImageSubresourceRange * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7829,7 +6209,7 @@ static void print_VkImageSubresourceRange(const VkImageSubresourceRange * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageMemoryBarrier(VkImageMemoryBarrier obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageMemoryBarrier(VkImageMemoryBarrier obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7871,7 +6251,7 @@ static void print_VkImageMemoryBarrier(VkImageMemoryBarrier obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageMemoryBarrier(const VkImageMemoryBarrier * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageMemoryBarrier(const VkImageMemoryBarrier * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7914,7 +6294,7 @@ static void print_VkImageMemoryBarrier(const VkImageMemoryBarrier * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMemoryBarrier(VkMemoryBarrier obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryBarrier(VkMemoryBarrier obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7939,7 +6319,7 @@ static void print_VkMemoryBarrier(VkMemoryBarrier obj, const std::string& s, boo
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryBarrier(const VkMemoryBarrier * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryBarrier(const VkMemoryBarrier * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7965,7 +6345,7 @@ static void print_VkMemoryBarrier(const VkMemoryBarrier * obj, const std::string
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineCacheHeaderVersionOne(VkPipelineCacheHeaderVersionOne obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineCacheHeaderVersionOne(VkPipelineCacheHeaderVersionOne obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -7984,8 +6364,6 @@ static void print_VkPipelineCacheHeaderVersionOne(VkPipelineCacheHeaderVersionOn
      if (obj.pipelineCacheUUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "pipelineCacheUUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj.pipelineCacheUUID[i], "", isCommaNeeded);
        }
@@ -8002,7 +6380,7 @@ static void print_VkPipelineCacheHeaderVersionOne(VkPipelineCacheHeaderVersionOn
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineCacheHeaderVersionOne(const VkPipelineCacheHeaderVersionOne * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineCacheHeaderVersionOne(const VkPipelineCacheHeaderVersionOne * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8021,8 +6399,6 @@ static void print_VkPipelineCacheHeaderVersionOne(const VkPipelineCacheHeaderVer
      if (obj->pipelineCacheUUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "pipelineCacheUUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj->pipelineCacheUUID[i], "", isCommaNeeded);
        }
@@ -8040,7 +6416,7 @@ static void print_VkPipelineCacheHeaderVersionOne(const VkPipelineCacheHeaderVer
          _OUT << "}" << std::endl;
 }
 
-static void print_VkAllocationCallbacks(VkAllocationCallbacks obj, const std::string& s, bool commaNeeded) {
+static void print_VkAllocationCallbacks(VkAllocationCallbacks obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8064,7 +6440,7 @@ static void print_VkAllocationCallbacks(VkAllocationCallbacks obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkAllocationCallbacks(const VkAllocationCallbacks * obj, const std::string& s, bool commaNeeded) {
+static void print_VkAllocationCallbacks(const VkAllocationCallbacks * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8089,7 +6465,7 @@ static void print_VkAllocationCallbacks(const VkAllocationCallbacks * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkApplicationInfo(VkApplicationInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkApplicationInfo(VkApplicationInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8120,7 +6496,7 @@ static void print_VkApplicationInfo(VkApplicationInfo obj, const std::string& s,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkApplicationInfo(const VkApplicationInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkApplicationInfo(const VkApplicationInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8152,7 +6528,7 @@ static void print_VkApplicationInfo(const VkApplicationInfo * obj, const std::st
          _OUT << "}" << std::endl;
 }
 
-static void print_VkFormatProperties(VkFormatProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkFormatProperties(VkFormatProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8170,7 +6546,7 @@ static void print_VkFormatProperties(VkFormatProperties obj, const std::string&
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkFormatProperties(const VkFormatProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkFormatProperties(const VkFormatProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8189,7 +6565,7 @@ static void print_VkFormatProperties(const VkFormatProperties * obj, const std::
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageFormatProperties(VkImageFormatProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageFormatProperties(VkImageFormatProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8215,7 +6591,7 @@ static void print_VkImageFormatProperties(VkImageFormatProperties obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageFormatProperties(const VkImageFormatProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageFormatProperties(const VkImageFormatProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8242,7 +6618,7 @@ static void print_VkImageFormatProperties(const VkImageFormatProperties * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkInstanceCreateInfo(VkInstanceCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkInstanceCreateInfo(VkInstanceCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8283,7 +6659,7 @@ static void print_VkInstanceCreateInfo(VkInstanceCreateInfo obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkInstanceCreateInfo(const VkInstanceCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkInstanceCreateInfo(const VkInstanceCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8325,7 +6701,7 @@ static void print_VkInstanceCreateInfo(const VkInstanceCreateInfo * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMemoryHeap(VkMemoryHeap obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryHeap(VkMemoryHeap obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8341,7 +6717,7 @@ static void print_VkMemoryHeap(VkMemoryHeap obj, const std::string& s, bool comm
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryHeap(const VkMemoryHeap * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryHeap(const VkMemoryHeap * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8358,7 +6734,7 @@ static void print_VkMemoryHeap(const VkMemoryHeap * obj, const std::string& s, b
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMemoryType(VkMemoryType obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryType(VkMemoryType obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8374,7 +6750,7 @@ static void print_VkMemoryType(VkMemoryType obj, const std::string& s, bool comm
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryType(const VkMemoryType * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryType(const VkMemoryType * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8391,7 +6767,7 @@ static void print_VkMemoryType(const VkMemoryType * obj, const std::string& s, b
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceFeatures(VkPhysicalDeviceFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFeatures(VkPhysicalDeviceFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8513,7 +6889,7 @@ static void print_VkPhysicalDeviceFeatures(VkPhysicalDeviceFeatures obj, const s
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceFeatures(const VkPhysicalDeviceFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFeatures(const VkPhysicalDeviceFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8636,7 +7012,7 @@ static void print_VkPhysicalDeviceFeatures(const VkPhysicalDeviceFeatures * obj,
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -8751,8 +7127,6 @@ static void print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj, const std::
      if (obj.maxComputeWorkGroupCount) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 3; i++) {
-           std:: stringstream tmp;
-           tmp << "maxComputeWorkGroupCount" << "_" << i;
            bool isCommaNeeded = (i+1) != 3;
            print_uint32_t(obj.maxComputeWorkGroupCount[i], "", isCommaNeeded);
        }
@@ -8770,8 +7144,6 @@ static void print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj, const std::
      if (obj.maxComputeWorkGroupSize) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 3; i++) {
-           std:: stringstream tmp;
-           tmp << "maxComputeWorkGroupSize" << "_" << i;
            bool isCommaNeeded = (i+1) != 3;
            print_uint32_t(obj.maxComputeWorkGroupSize[i], "", isCommaNeeded);
        }
@@ -8803,8 +7175,6 @@ static void print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj, const std::
      if (obj.maxViewportDimensions) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "maxViewportDimensions" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_uint32_t(obj.maxViewportDimensions[i], "", isCommaNeeded);
        }
@@ -8820,8 +7190,6 @@ static void print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj, const std::
      if (obj.viewportBoundsRange) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "viewportBoundsRange" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_float(obj.viewportBoundsRange[i], "", isCommaNeeded);
        }
@@ -8901,8 +7269,6 @@ static void print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj, const std::
      if (obj.pointSizeRange) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "pointSizeRange" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_float(obj.pointSizeRange[i], "", isCommaNeeded);
        }
@@ -8918,8 +7284,6 @@ static void print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj, const std::
      if (obj.lineWidthRange) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "lineWidthRange" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_float(obj.lineWidthRange[i], "", isCommaNeeded);
        }
@@ -8950,7 +7314,7 @@ static void print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj, const std::
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9065,8 +7429,6 @@ static void print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj, con
      if (obj->maxComputeWorkGroupCount) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 3; i++) {
-           std:: stringstream tmp;
-           tmp << "maxComputeWorkGroupCount" << "_" << i;
            bool isCommaNeeded = (i+1) != 3;
            print_uint32_t(obj->maxComputeWorkGroupCount[i], "", isCommaNeeded);
        }
@@ -9084,8 +7446,6 @@ static void print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj, con
      if (obj->maxComputeWorkGroupSize) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 3; i++) {
-           std:: stringstream tmp;
-           tmp << "maxComputeWorkGroupSize" << "_" << i;
            bool isCommaNeeded = (i+1) != 3;
            print_uint32_t(obj->maxComputeWorkGroupSize[i], "", isCommaNeeded);
        }
@@ -9117,8 +7477,6 @@ static void print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj, con
      if (obj->maxViewportDimensions) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "maxViewportDimensions" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_uint32_t(obj->maxViewportDimensions[i], "", isCommaNeeded);
        }
@@ -9134,8 +7492,6 @@ static void print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj, con
      if (obj->viewportBoundsRange) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "viewportBoundsRange" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_float(obj->viewportBoundsRange[i], "", isCommaNeeded);
        }
@@ -9215,8 +7571,6 @@ static void print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj, con
      if (obj->pointSizeRange) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "pointSizeRange" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_float(obj->pointSizeRange[i], "", isCommaNeeded);
        }
@@ -9232,8 +7586,6 @@ static void print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj, con
      if (obj->lineWidthRange) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "lineWidthRange" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_float(obj->lineWidthRange[i], "", isCommaNeeded);
        }
@@ -9265,7 +7617,7 @@ static void print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj, con
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceMemoryProperties(VkPhysicalDeviceMemoryProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceMemoryProperties(VkPhysicalDeviceMemoryProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9278,8 +7630,6 @@ static void print_VkPhysicalDeviceMemoryProperties(VkPhysicalDeviceMemoryPropert
      if (obj.memoryTypes) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_MEMORY_TYPES; i++) {
-           std:: stringstream tmp;
-           tmp << "memoryTypes" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_TYPES;
            print_VkMemoryType(obj.memoryTypes[i], "", isCommaNeeded);
        }
@@ -9297,8 +7647,6 @@ static void print_VkPhysicalDeviceMemoryProperties(VkPhysicalDeviceMemoryPropert
      if (obj.memoryHeaps) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
-           std:: stringstream tmp;
-           tmp << "memoryHeaps" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
            print_VkMemoryHeap(obj.memoryHeaps[i], "", isCommaNeeded);
        }
@@ -9315,7 +7663,7 @@ static void print_VkPhysicalDeviceMemoryProperties(VkPhysicalDeviceMemoryPropert
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9328,8 +7676,6 @@ static void print_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryP
      if (obj->memoryTypes) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_MEMORY_TYPES; i++) {
-           std:: stringstream tmp;
-           tmp << "memoryTypes" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_TYPES;
            print_VkMemoryType(obj->memoryTypes[i], "", isCommaNeeded);
        }
@@ -9347,8 +7693,6 @@ static void print_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryP
      if (obj->memoryHeaps) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
-           std:: stringstream tmp;
-           tmp << "memoryHeaps" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
            print_VkMemoryHeap(obj->memoryHeaps[i], "", isCommaNeeded);
        }
@@ -9366,7 +7710,7 @@ static void print_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryP
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceSparseProperties(VkPhysicalDeviceSparseProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSparseProperties(VkPhysicalDeviceSparseProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9388,7 +7732,7 @@ static void print_VkPhysicalDeviceSparseProperties(VkPhysicalDeviceSparsePropert
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceSparseProperties(const VkPhysicalDeviceSparseProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSparseProperties(const VkPhysicalDeviceSparseProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9411,7 +7755,7 @@ static void print_VkPhysicalDeviceSparseProperties(const VkPhysicalDeviceSparseP
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceProperties(VkPhysicalDeviceProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceProperties(VkPhysicalDeviceProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9432,8 +7776,6 @@ static void print_VkPhysicalDeviceProperties(VkPhysicalDeviceProperties obj, con
      if (obj.deviceName) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_PHYSICAL_DEVICE_NAME_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "deviceName" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_PHYSICAL_DEVICE_NAME_SIZE;
            print_char(obj.deviceName[i], "", isCommaNeeded);
        }
@@ -9449,8 +7791,6 @@ static void print_VkPhysicalDeviceProperties(VkPhysicalDeviceProperties obj, con
      if (obj.pipelineCacheUUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "pipelineCacheUUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj.pipelineCacheUUID[i], "", isCommaNeeded);
        }
@@ -9479,7 +7819,7 @@ static void print_VkPhysicalDeviceProperties(VkPhysicalDeviceProperties obj, con
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9500,8 +7840,6 @@ static void print_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties *
      if (obj->deviceName) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_PHYSICAL_DEVICE_NAME_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "deviceName" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_PHYSICAL_DEVICE_NAME_SIZE;
            print_char(obj->deviceName[i], "", isCommaNeeded);
        }
@@ -9517,8 +7855,6 @@ static void print_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties *
      if (obj->pipelineCacheUUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "pipelineCacheUUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj->pipelineCacheUUID[i], "", isCommaNeeded);
        }
@@ -9548,7 +7884,7 @@ static void print_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties *
          _OUT << "}" << std::endl;
 }
 
-static void print_VkQueueFamilyProperties(VkQueueFamilyProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkQueueFamilyProperties(VkQueueFamilyProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9572,7 +7908,7 @@ static void print_VkQueueFamilyProperties(VkQueueFamilyProperties obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkQueueFamilyProperties(const VkQueueFamilyProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkQueueFamilyProperties(const VkQueueFamilyProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9597,7 +7933,7 @@ static void print_VkQueueFamilyProperties(const VkQueueFamilyProperties * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDeviceQueueCreateInfo(VkDeviceQueueCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceQueueCreateInfo(VkDeviceQueueCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9623,8 +7959,6 @@ static void print_VkDeviceQueueCreateInfo(VkDeviceQueueCreateInfo obj, const std
      if (obj.pQueuePriorities) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.queueCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pQueuePriorities" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.queueCount;
            print_float(obj.pQueuePriorities[i], "", isCommaNeeded);
        }
@@ -9641,7 +7975,7 @@ static void print_VkDeviceQueueCreateInfo(VkDeviceQueueCreateInfo obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceQueueCreateInfo(const VkDeviceQueueCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceQueueCreateInfo(const VkDeviceQueueCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9667,8 +8001,6 @@ static void print_VkDeviceQueueCreateInfo(const VkDeviceQueueCreateInfo * obj, c
      if (obj->pQueuePriorities) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->queueCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pQueuePriorities" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->queueCount;
            print_float(obj->pQueuePriorities[i], "", isCommaNeeded);
        }
@@ -9686,7 +8018,7 @@ static void print_VkDeviceQueueCreateInfo(const VkDeviceQueueCreateInfo * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDeviceCreateInfo(VkDeviceCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceCreateInfo(VkDeviceCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9748,7 +8080,7 @@ static void print_VkDeviceCreateInfo(VkDeviceCreateInfo obj, const std::string&
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceCreateInfo(const VkDeviceCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceCreateInfo(const VkDeviceCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9811,7 +8143,7 @@ static void print_VkDeviceCreateInfo(const VkDeviceCreateInfo * obj, const std::
          _OUT << "}" << std::endl;
 }
 
-static void print_VkExtensionProperties(VkExtensionProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkExtensionProperties(VkExtensionProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9822,8 +8154,6 @@ static void print_VkExtensionProperties(VkExtensionProperties obj, const std::st
      if (obj.extensionName) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "extensionName" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_EXTENSION_NAME_SIZE;
            print_char(obj.extensionName[i], "", isCommaNeeded);
        }
@@ -9842,7 +8172,7 @@ static void print_VkExtensionProperties(VkExtensionProperties obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkExtensionProperties(const VkExtensionProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkExtensionProperties(const VkExtensionProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9853,8 +8183,6 @@ static void print_VkExtensionProperties(const VkExtensionProperties * obj, const
      if (obj->extensionName) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "extensionName" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_EXTENSION_NAME_SIZE;
            print_char(obj->extensionName[i], "", isCommaNeeded);
        }
@@ -9874,7 +8202,7 @@ static void print_VkExtensionProperties(const VkExtensionProperties * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkLayerProperties(VkLayerProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkLayerProperties(VkLayerProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9885,8 +8213,6 @@ static void print_VkLayerProperties(VkLayerProperties obj, const std::string& s,
      if (obj.layerName) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "layerName" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_EXTENSION_NAME_SIZE;
            print_char(obj.layerName[i], "", isCommaNeeded);
        }
@@ -9906,8 +8232,6 @@ static void print_VkLayerProperties(VkLayerProperties obj, const std::string& s,
      if (obj.description) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "description" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
            print_char(obj.description[i], "", isCommaNeeded);
        }
@@ -9924,7 +8248,7 @@ static void print_VkLayerProperties(VkLayerProperties obj, const std::string& s,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkLayerProperties(const VkLayerProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkLayerProperties(const VkLayerProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -9935,8 +8259,6 @@ static void print_VkLayerProperties(const VkLayerProperties * obj, const std::st
      if (obj->layerName) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "layerName" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_EXTENSION_NAME_SIZE;
            print_char(obj->layerName[i], "", isCommaNeeded);
        }
@@ -9956,8 +8278,6 @@ static void print_VkLayerProperties(const VkLayerProperties * obj, const std::st
      if (obj->description) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "description" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
            print_char(obj->description[i], "", isCommaNeeded);
        }
@@ -9975,7 +8295,7 @@ static void print_VkLayerProperties(const VkLayerProperties * obj, const std::st
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSubmitInfo(VkSubmitInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubmitInfo(VkSubmitInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10014,8 +8334,6 @@ static void print_VkSubmitInfo(VkSubmitInfo obj, const std::string& s, bool comm
      if (obj.pWaitDstStageMask) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.waitSemaphoreCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pWaitDstStageMask" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.waitSemaphoreCount;
            print_VkPipelineStageFlags(obj.pWaitDstStageMask[i], "", isCommaNeeded);
        }
@@ -10070,7 +8388,7 @@ static void print_VkSubmitInfo(VkSubmitInfo obj, const std::string& s, bool comm
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSubmitInfo(const VkSubmitInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubmitInfo(const VkSubmitInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10109,8 +8427,6 @@ static void print_VkSubmitInfo(const VkSubmitInfo * obj, const std::string& s, b
      if (obj->pWaitDstStageMask) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->waitSemaphoreCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pWaitDstStageMask" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->waitSemaphoreCount;
            print_VkPipelineStageFlags(obj->pWaitDstStageMask[i], "", isCommaNeeded);
        }
@@ -10166,7 +8482,7 @@ static void print_VkSubmitInfo(const VkSubmitInfo * obj, const std::string& s, b
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMappedMemoryRange(VkMappedMemoryRange obj, const std::string& s, bool commaNeeded) {
+static void print_VkMappedMemoryRange(VkMappedMemoryRange obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10194,7 +8510,7 @@ static void print_VkMappedMemoryRange(VkMappedMemoryRange obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMappedMemoryRange(const VkMappedMemoryRange * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMappedMemoryRange(const VkMappedMemoryRange * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10223,7 +8539,7 @@ static void print_VkMappedMemoryRange(const VkMappedMemoryRange * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMemoryAllocateInfo(VkMemoryAllocateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryAllocateInfo(VkMemoryAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10248,7 +8564,7 @@ static void print_VkMemoryAllocateInfo(VkMemoryAllocateInfo obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryAllocateInfo(const VkMemoryAllocateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryAllocateInfo(const VkMemoryAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10274,7 +8590,7 @@ static void print_VkMemoryAllocateInfo(const VkMemoryAllocateInfo * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMemoryRequirements(VkMemoryRequirements obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryRequirements(VkMemoryRequirements obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10292,7 +8608,7 @@ static void print_VkMemoryRequirements(VkMemoryRequirements obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryRequirements(const VkMemoryRequirements * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryRequirements(const VkMemoryRequirements * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10311,7 +8627,7 @@ static void print_VkMemoryRequirements(const VkMemoryRequirements * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageSubresource(VkImageSubresource obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageSubresource(VkImageSubresource obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10329,7 +8645,7 @@ static void print_VkImageSubresource(VkImageSubresource obj, const std::string&
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageSubresource(const VkImageSubresource * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageSubresource(const VkImageSubresource * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10348,7 +8664,7 @@ static void print_VkImageSubresource(const VkImageSubresource * obj, const std::
          _OUT << "}" << std::endl;
 }
 
-static void print_VkFenceCreateInfo(VkFenceCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkFenceCreateInfo(VkFenceCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10371,7 +8687,7 @@ static void print_VkFenceCreateInfo(VkFenceCreateInfo obj, const std::string& s,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkFenceCreateInfo(const VkFenceCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkFenceCreateInfo(const VkFenceCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10395,7 +8711,7 @@ static void print_VkFenceCreateInfo(const VkFenceCreateInfo * obj, const std::st
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSemaphoreCreateInfo(VkSemaphoreCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkSemaphoreCreateInfo(VkSemaphoreCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10418,7 +8734,7 @@ static void print_VkSemaphoreCreateInfo(VkSemaphoreCreateInfo obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSemaphoreCreateInfo(const VkSemaphoreCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSemaphoreCreateInfo(const VkSemaphoreCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10442,7 +8758,7 @@ static void print_VkSemaphoreCreateInfo(const VkSemaphoreCreateInfo * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkEventCreateInfo(VkEventCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkEventCreateInfo(VkEventCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10465,7 +8781,7 @@ static void print_VkEventCreateInfo(VkEventCreateInfo obj, const std::string& s,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkEventCreateInfo(const VkEventCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkEventCreateInfo(const VkEventCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10489,7 +8805,7 @@ static void print_VkEventCreateInfo(const VkEventCreateInfo * obj, const std::st
          _OUT << "}" << std::endl;
 }
 
-static void print_VkQueryPoolCreateInfo(VkQueryPoolCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkQueryPoolCreateInfo(VkQueryPoolCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10518,7 +8834,7 @@ static void print_VkQueryPoolCreateInfo(VkQueryPoolCreateInfo obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkQueryPoolCreateInfo(const VkQueryPoolCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkQueryPoolCreateInfo(const VkQueryPoolCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10548,7 +8864,7 @@ static void print_VkQueryPoolCreateInfo(const VkQueryPoolCreateInfo * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBufferCreateInfo(VkBufferCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferCreateInfo(VkBufferCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10578,8 +8894,6 @@ static void print_VkBufferCreateInfo(VkBufferCreateInfo obj, const std::string&
      if (obj.pQueueFamilyIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.queueFamilyIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pQueueFamilyIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.queueFamilyIndexCount;
            print_uint32_t(obj.pQueueFamilyIndices[i], "", isCommaNeeded);
        }
@@ -10596,7 +8910,7 @@ static void print_VkBufferCreateInfo(VkBufferCreateInfo obj, const std::string&
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBufferCreateInfo(const VkBufferCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferCreateInfo(const VkBufferCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10626,8 +8940,6 @@ static void print_VkBufferCreateInfo(const VkBufferCreateInfo * obj, const std::
      if (obj->pQueueFamilyIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->queueFamilyIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pQueueFamilyIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->queueFamilyIndexCount;
            print_uint32_t(obj->pQueueFamilyIndices[i], "", isCommaNeeded);
        }
@@ -10645,7 +8957,7 @@ static void print_VkBufferCreateInfo(const VkBufferCreateInfo * obj, const std::
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBufferViewCreateInfo(VkBufferViewCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferViewCreateInfo(VkBufferViewCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10677,7 +8989,7 @@ static void print_VkBufferViewCreateInfo(VkBufferViewCreateInfo obj, const std::
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBufferViewCreateInfo(const VkBufferViewCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferViewCreateInfo(const VkBufferViewCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10710,7 +9022,7 @@ static void print_VkBufferViewCreateInfo(const VkBufferViewCreateInfo * obj, con
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageCreateInfo(VkImageCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageCreateInfo(VkImageCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10756,8 +9068,6 @@ static void print_VkImageCreateInfo(VkImageCreateInfo obj, const std::string& s,
      if (obj.pQueueFamilyIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.queueFamilyIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pQueueFamilyIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.queueFamilyIndexCount;
            print_uint32_t(obj.pQueueFamilyIndices[i], "", isCommaNeeded);
        }
@@ -10776,7 +9086,7 @@ static void print_VkImageCreateInfo(VkImageCreateInfo obj, const std::string& s,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageCreateInfo(const VkImageCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageCreateInfo(const VkImageCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10822,8 +9132,6 @@ static void print_VkImageCreateInfo(const VkImageCreateInfo * obj, const std::st
      if (obj->pQueueFamilyIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->queueFamilyIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pQueueFamilyIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->queueFamilyIndexCount;
            print_uint32_t(obj->pQueueFamilyIndices[i], "", isCommaNeeded);
        }
@@ -10843,7 +9151,7 @@ static void print_VkImageCreateInfo(const VkImageCreateInfo * obj, const std::st
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSubresourceLayout(VkSubresourceLayout obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubresourceLayout(VkSubresourceLayout obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10865,7 +9173,7 @@ static void print_VkSubresourceLayout(VkSubresourceLayout obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSubresourceLayout(const VkSubresourceLayout * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubresourceLayout(const VkSubresourceLayout * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10888,7 +9196,7 @@ static void print_VkSubresourceLayout(const VkSubresourceLayout * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkComponentMapping(VkComponentMapping obj, const std::string& s, bool commaNeeded) {
+static void print_VkComponentMapping(VkComponentMapping obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10908,7 +9216,7 @@ static void print_VkComponentMapping(VkComponentMapping obj, const std::string&
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkComponentMapping(const VkComponentMapping * obj, const std::string& s, bool commaNeeded) {
+static void print_VkComponentMapping(const VkComponentMapping * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10929,7 +9237,7 @@ static void print_VkComponentMapping(const VkComponentMapping * obj, const std::
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageViewCreateInfo(VkImageViewCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageViewCreateInfo(VkImageViewCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -10971,7 +9279,7 @@ static void print_VkImageViewCreateInfo(VkImageViewCreateInfo obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageViewCreateInfo(const VkImageViewCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageViewCreateInfo(const VkImageViewCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11014,7 +9322,7 @@ static void print_VkImageViewCreateInfo(const VkImageViewCreateInfo * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineCacheCreateInfo(VkPipelineCacheCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineCacheCreateInfo(VkPipelineCacheCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11041,7 +9349,7 @@ static void print_VkPipelineCacheCreateInfo(VkPipelineCacheCreateInfo obj, const
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineCacheCreateInfo(const VkPipelineCacheCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineCacheCreateInfo(const VkPipelineCacheCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11069,7 +9377,7 @@ static void print_VkPipelineCacheCreateInfo(const VkPipelineCacheCreateInfo * ob
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSpecializationMapEntry(VkSpecializationMapEntry obj, const std::string& s, bool commaNeeded) {
+static void print_VkSpecializationMapEntry(VkSpecializationMapEntry obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11087,7 +9395,7 @@ static void print_VkSpecializationMapEntry(VkSpecializationMapEntry obj, const s
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSpecializationMapEntry(const VkSpecializationMapEntry * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSpecializationMapEntry(const VkSpecializationMapEntry * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11106,7 +9414,7 @@ static void print_VkSpecializationMapEntry(const VkSpecializationMapEntry * obj,
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSpecializationInfo(VkSpecializationInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkSpecializationInfo(VkSpecializationInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11143,7 +9451,7 @@ static void print_VkSpecializationInfo(VkSpecializationInfo obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSpecializationInfo(const VkSpecializationInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSpecializationInfo(const VkSpecializationInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11181,7 +9489,7 @@ static void print_VkSpecializationInfo(const VkSpecializationInfo * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineShaderStageCreateInfo(VkPipelineShaderStageCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineShaderStageCreateInfo(VkPipelineShaderStageCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11221,7 +9529,7 @@ static void print_VkPipelineShaderStageCreateInfo(VkPipelineShaderStageCreateInf
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineShaderStageCreateInfo(const VkPipelineShaderStageCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineShaderStageCreateInfo(const VkPipelineShaderStageCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11262,7 +9570,7 @@ static void print_VkPipelineShaderStageCreateInfo(const VkPipelineShaderStageCre
          _OUT << "}" << std::endl;
 }
 
-static void print_VkComputePipelineCreateInfo(VkComputePipelineCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkComputePipelineCreateInfo(VkComputePipelineCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11299,7 +9607,7 @@ static void print_VkComputePipelineCreateInfo(VkComputePipelineCreateInfo obj, c
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkComputePipelineCreateInfo(const VkComputePipelineCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkComputePipelineCreateInfo(const VkComputePipelineCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11337,7 +9645,7 @@ static void print_VkComputePipelineCreateInfo(const VkComputePipelineCreateInfo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkVertexInputBindingDescription(VkVertexInputBindingDescription obj, const std::string& s, bool commaNeeded) {
+static void print_VkVertexInputBindingDescription(VkVertexInputBindingDescription obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11355,7 +9663,7 @@ static void print_VkVertexInputBindingDescription(VkVertexInputBindingDescriptio
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkVertexInputBindingDescription(const VkVertexInputBindingDescription * obj, const std::string& s, bool commaNeeded) {
+static void print_VkVertexInputBindingDescription(const VkVertexInputBindingDescription * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11374,7 +9682,7 @@ static void print_VkVertexInputBindingDescription(const VkVertexInputBindingDesc
          _OUT << "}" << std::endl;
 }
 
-static void print_VkVertexInputAttributeDescription(VkVertexInputAttributeDescription obj, const std::string& s, bool commaNeeded) {
+static void print_VkVertexInputAttributeDescription(VkVertexInputAttributeDescription obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11394,7 +9702,7 @@ static void print_VkVertexInputAttributeDescription(VkVertexInputAttributeDescri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkVertexInputAttributeDescription(const VkVertexInputAttributeDescription * obj, const std::string& s, bool commaNeeded) {
+static void print_VkVertexInputAttributeDescription(const VkVertexInputAttributeDescription * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11415,7 +9723,7 @@ static void print_VkVertexInputAttributeDescription(const VkVertexInputAttribute
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineVertexInputStateCreateInfo(VkPipelineVertexInputStateCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineVertexInputStateCreateInfo(VkPipelineVertexInputStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11480,7 +9788,7 @@ static void print_VkPipelineVertexInputStateCreateInfo(VkPipelineVertexInputStat
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineVertexInputStateCreateInfo(const VkPipelineVertexInputStateCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineVertexInputStateCreateInfo(const VkPipelineVertexInputStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11546,7 +9854,7 @@ static void print_VkPipelineVertexInputStateCreateInfo(const VkPipelineVertexInp
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineInputAssemblyStateCreateInfo(VkPipelineInputAssemblyStateCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineInputAssemblyStateCreateInfo(VkPipelineInputAssemblyStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11573,7 +9881,7 @@ static void print_VkPipelineInputAssemblyStateCreateInfo(VkPipelineInputAssembly
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineInputAssemblyStateCreateInfo(const VkPipelineInputAssemblyStateCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineInputAssemblyStateCreateInfo(const VkPipelineInputAssemblyStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11601,7 +9909,7 @@ static void print_VkPipelineInputAssemblyStateCreateInfo(const VkPipelineInputAs
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineTessellationStateCreateInfo(VkPipelineTessellationStateCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineTessellationStateCreateInfo(VkPipelineTessellationStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11626,7 +9934,7 @@ static void print_VkPipelineTessellationStateCreateInfo(VkPipelineTessellationSt
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineTessellationStateCreateInfo(const VkPipelineTessellationStateCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineTessellationStateCreateInfo(const VkPipelineTessellationStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11652,7 +9960,7 @@ static void print_VkPipelineTessellationStateCreateInfo(const VkPipelineTessella
          _OUT << "}" << std::endl;
 }
 
-static void print_VkViewport(VkViewport obj, const std::string& s, bool commaNeeded) {
+static void print_VkViewport(VkViewport obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11676,7 +9984,7 @@ static void print_VkViewport(VkViewport obj, const std::string& s, bool commaNee
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkViewport(const VkViewport * obj, const std::string& s, bool commaNeeded) {
+static void print_VkViewport(const VkViewport * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11701,7 +10009,7 @@ static void print_VkViewport(const VkViewport * obj, const std::string& s, bool
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineViewportStateCreateInfo(VkPipelineViewportStateCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineViewportStateCreateInfo(VkPipelineViewportStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11766,7 +10074,7 @@ static void print_VkPipelineViewportStateCreateInfo(VkPipelineViewportStateCreat
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineViewportStateCreateInfo(const VkPipelineViewportStateCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineViewportStateCreateInfo(const VkPipelineViewportStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11832,7 +10140,7 @@ static void print_VkPipelineViewportStateCreateInfo(const VkPipelineViewportStat
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineRasterizationStateCreateInfo(VkPipelineRasterizationStateCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineRasterizationStateCreateInfo(VkPipelineRasterizationStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11875,7 +10183,7 @@ static void print_VkPipelineRasterizationStateCreateInfo(VkPipelineRasterization
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineRasterizationStateCreateInfo(const VkPipelineRasterizationStateCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineRasterizationStateCreateInfo(const VkPipelineRasterizationStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11919,7 +10227,7 @@ static void print_VkPipelineRasterizationStateCreateInfo(const VkPipelineRasteri
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineMultisampleStateCreateInfo(VkPipelineMultisampleStateCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineMultisampleStateCreateInfo(VkPipelineMultisampleStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11948,8 +10256,6 @@ static void print_VkPipelineMultisampleStateCreateInfo(VkPipelineMultisampleStat
      if (obj.pSampleMask) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < sampleMaskSize; i++) {
-           std:: stringstream tmp;
-           tmp << "pSampleMask" << "_" << i;
            bool isCommaNeeded = (i+1) != sampleMaskSize;
            print_uint32_t(obj.pSampleMask[i], "", isCommaNeeded);
        }
@@ -11970,7 +10276,7 @@ static void print_VkPipelineMultisampleStateCreateInfo(VkPipelineMultisampleStat
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineMultisampleStateCreateInfo(const VkPipelineMultisampleStateCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineMultisampleStateCreateInfo(const VkPipelineMultisampleStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -11999,8 +10305,6 @@ static void print_VkPipelineMultisampleStateCreateInfo(const VkPipelineMultisamp
      if (obj->pSampleMask) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < sampleMaskSize; i++) {
-           std:: stringstream tmp;
-           tmp << "pSampleMask" << "_" << i;
            bool isCommaNeeded = (i+1) != sampleMaskSize;
            print_uint32_t(obj->pSampleMask[i], "", isCommaNeeded);
        }
@@ -12022,7 +10326,7 @@ static void print_VkPipelineMultisampleStateCreateInfo(const VkPipelineMultisamp
          _OUT << "}" << std::endl;
 }
 
-static void print_VkStencilOpState(VkStencilOpState obj, const std::string& s, bool commaNeeded) {
+static void print_VkStencilOpState(VkStencilOpState obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12048,7 +10352,7 @@ static void print_VkStencilOpState(VkStencilOpState obj, const std::string& s, b
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkStencilOpState(const VkStencilOpState * obj, const std::string& s, bool commaNeeded) {
+static void print_VkStencilOpState(const VkStencilOpState * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12075,7 +10379,7 @@ static void print_VkStencilOpState(const VkStencilOpState * obj, const std::stri
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineDepthStencilStateCreateInfo(VkPipelineDepthStencilStateCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineDepthStencilStateCreateInfo(VkPipelineDepthStencilStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12124,7 +10428,7 @@ static void print_VkPipelineDepthStencilStateCreateInfo(VkPipelineDepthStencilSt
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineDepthStencilStateCreateInfo(const VkPipelineDepthStencilStateCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineDepthStencilStateCreateInfo(const VkPipelineDepthStencilStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12174,7 +10478,7 @@ static void print_VkPipelineDepthStencilStateCreateInfo(const VkPipelineDepthSte
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineColorBlendAttachmentState(VkPipelineColorBlendAttachmentState obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineColorBlendAttachmentState(VkPipelineColorBlendAttachmentState obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12202,7 +10506,7 @@ static void print_VkPipelineColorBlendAttachmentState(VkPipelineColorBlendAttach
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineColorBlendAttachmentState(const VkPipelineColorBlendAttachmentState * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineColorBlendAttachmentState(const VkPipelineColorBlendAttachmentState * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12231,7 +10535,7 @@ static void print_VkPipelineColorBlendAttachmentState(const VkPipelineColorBlend
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineColorBlendStateCreateInfo(VkPipelineColorBlendStateCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineColorBlendStateCreateInfo(VkPipelineColorBlendStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12278,8 +10582,6 @@ static void print_VkPipelineColorBlendStateCreateInfo(VkPipelineColorBlendStateC
      if (obj.blendConstants) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 4; i++) {
-           std:: stringstream tmp;
-           tmp << "blendConstants" << "_" << i;
            bool isCommaNeeded = (i+1) != 4;
            print_float(obj.blendConstants[i], "", isCommaNeeded);
        }
@@ -12296,7 +10598,7 @@ static void print_VkPipelineColorBlendStateCreateInfo(VkPipelineColorBlendStateC
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineColorBlendStateCreateInfo(const VkPipelineColorBlendStateCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineColorBlendStateCreateInfo(const VkPipelineColorBlendStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12343,8 +10645,6 @@ static void print_VkPipelineColorBlendStateCreateInfo(const VkPipelineColorBlend
      if (obj->blendConstants) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 4; i++) {
-           std:: stringstream tmp;
-           tmp << "blendConstants" << "_" << i;
            bool isCommaNeeded = (i+1) != 4;
            print_float(obj->blendConstants[i], "", isCommaNeeded);
        }
@@ -12362,7 +10662,7 @@ static void print_VkPipelineColorBlendStateCreateInfo(const VkPipelineColorBlend
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineDynamicStateCreateInfo(VkPipelineDynamicStateCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineDynamicStateCreateInfo(VkPipelineDynamicStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12386,8 +10686,6 @@ static void print_VkPipelineDynamicStateCreateInfo(VkPipelineDynamicStateCreateI
      if (obj.pDynamicStates) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.dynamicStateCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDynamicStates" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.dynamicStateCount;
            print_VkDynamicState(obj.pDynamicStates[i], "", isCommaNeeded);
        }
@@ -12404,7 +10702,7 @@ static void print_VkPipelineDynamicStateCreateInfo(VkPipelineDynamicStateCreateI
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineDynamicStateCreateInfo(const VkPipelineDynamicStateCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineDynamicStateCreateInfo(const VkPipelineDynamicStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12428,8 +10726,6 @@ static void print_VkPipelineDynamicStateCreateInfo(const VkPipelineDynamicStateC
      if (obj->pDynamicStates) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->dynamicStateCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDynamicStates" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->dynamicStateCount;
            print_VkDynamicState(obj->pDynamicStates[i], "", isCommaNeeded);
        }
@@ -12447,7 +10743,7 @@ static void print_VkPipelineDynamicStateCreateInfo(const VkPipelineDynamicStateC
          _OUT << "}" << std::endl;
 }
 
-static void print_VkGraphicsPipelineCreateInfo(VkGraphicsPipelineCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkGraphicsPipelineCreateInfo(VkGraphicsPipelineCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12594,7 +10890,7 @@ static void print_VkGraphicsPipelineCreateInfo(VkGraphicsPipelineCreateInfo obj,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkGraphicsPipelineCreateInfo(const VkGraphicsPipelineCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkGraphicsPipelineCreateInfo(const VkGraphicsPipelineCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12742,7 +11038,7 @@ static void print_VkGraphicsPipelineCreateInfo(const VkGraphicsPipelineCreateInf
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPushConstantRange(VkPushConstantRange obj, const std::string& s, bool commaNeeded) {
+static void print_VkPushConstantRange(VkPushConstantRange obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12760,7 +11056,7 @@ static void print_VkPushConstantRange(VkPushConstantRange obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPushConstantRange(const VkPushConstantRange * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPushConstantRange(const VkPushConstantRange * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12779,7 +11075,7 @@ static void print_VkPushConstantRange(const VkPushConstantRange * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineLayoutCreateInfo(VkPipelineLayoutCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineLayoutCreateInfo(VkPipelineLayoutCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12849,7 +11145,7 @@ static void print_VkPipelineLayoutCreateInfo(VkPipelineLayoutCreateInfo obj, con
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12920,7 +11216,7 @@ static void print_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo *
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSamplerCreateInfo(VkSamplerCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkSamplerCreateInfo(VkSamplerCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -12973,7 +11269,7 @@ static void print_VkSamplerCreateInfo(VkSamplerCreateInfo obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSamplerCreateInfo(const VkSamplerCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSamplerCreateInfo(const VkSamplerCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13027,7 +11323,7 @@ static void print_VkSamplerCreateInfo(const VkSamplerCreateInfo * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkCopyDescriptorSet(VkCopyDescriptorSet obj, const std::string& s, bool commaNeeded) {
+static void print_VkCopyDescriptorSet(VkCopyDescriptorSet obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13064,7 +11360,7 @@ static void print_VkCopyDescriptorSet(VkCopyDescriptorSet obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCopyDescriptorSet(const VkCopyDescriptorSet * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCopyDescriptorSet(const VkCopyDescriptorSet * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13102,7 +11398,7 @@ static void print_VkCopyDescriptorSet(const VkCopyDescriptorSet * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDescriptorBufferInfo(VkDescriptorBufferInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorBufferInfo(VkDescriptorBufferInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13121,7 +11417,7 @@ static void print_VkDescriptorBufferInfo(VkDescriptorBufferInfo obj, const std::
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDescriptorBufferInfo(const VkDescriptorBufferInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorBufferInfo(const VkDescriptorBufferInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13141,7 +11437,7 @@ static void print_VkDescriptorBufferInfo(const VkDescriptorBufferInfo * obj, con
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDescriptorImageInfo(VkDescriptorImageInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorImageInfo(VkDescriptorImageInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13161,7 +11457,7 @@ static void print_VkDescriptorImageInfo(VkDescriptorImageInfo obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDescriptorImageInfo(const VkDescriptorImageInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorImageInfo(const VkDescriptorImageInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13182,7 +11478,7 @@ static void print_VkDescriptorImageInfo(const VkDescriptorImageInfo * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDescriptorPoolSize(VkDescriptorPoolSize obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorPoolSize(VkDescriptorPoolSize obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13198,7 +11494,7 @@ static void print_VkDescriptorPoolSize(VkDescriptorPoolSize obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDescriptorPoolSize(const VkDescriptorPoolSize * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorPoolSize(const VkDescriptorPoolSize * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13215,7 +11511,7 @@ static void print_VkDescriptorPoolSize(const VkDescriptorPoolSize * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDescriptorPoolCreateInfo(VkDescriptorPoolCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorPoolCreateInfo(VkDescriptorPoolCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13261,7 +11557,7 @@ static void print_VkDescriptorPoolCreateInfo(VkDescriptorPoolCreateInfo obj, con
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13308,7 +11604,7 @@ static void print_VkDescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo *
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDescriptorSetAllocateInfo(VkDescriptorSetAllocateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetAllocateInfo(VkDescriptorSetAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13351,7 +11647,7 @@ static void print_VkDescriptorSetAllocateInfo(VkDescriptorSetAllocateInfo obj, c
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDescriptorSetAllocateInfo(const VkDescriptorSetAllocateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetAllocateInfo(const VkDescriptorSetAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13395,7 +11691,7 @@ static void print_VkDescriptorSetAllocateInfo(const VkDescriptorSetAllocateInfo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDescriptorSetLayoutBinding(VkDescriptorSetLayoutBinding obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetLayoutBinding(VkDescriptorSetLayoutBinding obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13439,7 +11735,7 @@ static void print_VkDescriptorSetLayoutBinding(VkDescriptorSetLayoutBinding obj,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDescriptorSetLayoutBinding(const VkDescriptorSetLayoutBinding * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetLayoutBinding(const VkDescriptorSetLayoutBinding * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13484,7 +11780,7 @@ static void print_VkDescriptorSetLayoutBinding(const VkDescriptorSetLayoutBindin
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDescriptorSetLayoutCreateInfo(VkDescriptorSetLayoutCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetLayoutCreateInfo(VkDescriptorSetLayoutCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13528,7 +11824,7 @@ static void print_VkDescriptorSetLayoutCreateInfo(VkDescriptorSetLayoutCreateInf
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDescriptorSetLayoutCreateInfo(const VkDescriptorSetLayoutCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetLayoutCreateInfo(const VkDescriptorSetLayoutCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13573,7 +11869,7 @@ static void print_VkDescriptorSetLayoutCreateInfo(const VkDescriptorSetLayoutCre
          _OUT << "}" << std::endl;
 }
 
-static void print_VkWriteDescriptorSet(VkWriteDescriptorSet obj, const std::string& s, bool commaNeeded) {
+static void print_VkWriteDescriptorSet(VkWriteDescriptorSet obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13660,7 +11956,7 @@ static void print_VkWriteDescriptorSet(VkWriteDescriptorSet obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkWriteDescriptorSet(const VkWriteDescriptorSet * obj, const std::string& s, bool commaNeeded) {
+static void print_VkWriteDescriptorSet(const VkWriteDescriptorSet * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13748,7 +12044,7 @@ static void print_VkWriteDescriptorSet(const VkWriteDescriptorSet * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkAttachmentDescription(VkAttachmentDescription obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentDescription(VkAttachmentDescription obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13778,7 +12074,7 @@ static void print_VkAttachmentDescription(VkAttachmentDescription obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkAttachmentDescription(const VkAttachmentDescription * obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentDescription(const VkAttachmentDescription * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13809,7 +12105,7 @@ static void print_VkAttachmentDescription(const VkAttachmentDescription * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkAttachmentReference(VkAttachmentReference obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentReference(VkAttachmentReference obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13825,7 +12121,7 @@ static void print_VkAttachmentReference(VkAttachmentReference obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkAttachmentReference(const VkAttachmentReference * obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentReference(const VkAttachmentReference * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13842,7 +12138,7 @@ static void print_VkAttachmentReference(const VkAttachmentReference * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkFramebufferCreateInfo(VkFramebufferCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkFramebufferCreateInfo(VkFramebufferCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13893,7 +12189,7 @@ static void print_VkFramebufferCreateInfo(VkFramebufferCreateInfo obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkFramebufferCreateInfo(const VkFramebufferCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkFramebufferCreateInfo(const VkFramebufferCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -13945,7 +12241,7 @@ static void print_VkFramebufferCreateInfo(const VkFramebufferCreateInfo * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSubpassDescription(VkSubpassDescription obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassDescription(VkSubpassDescription obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14033,8 +12329,6 @@ static void print_VkSubpassDescription(VkSubpassDescription obj, const std::stri
      if (obj.pPreserveAttachments) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.preserveAttachmentCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pPreserveAttachments" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.preserveAttachmentCount;
            print_uint32_t(obj.pPreserveAttachments[i], "", isCommaNeeded);
        }
@@ -14051,7 +12345,7 @@ static void print_VkSubpassDescription(VkSubpassDescription obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSubpassDescription(const VkSubpassDescription * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassDescription(const VkSubpassDescription * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14139,8 +12433,6 @@ static void print_VkSubpassDescription(const VkSubpassDescription * obj, const s
      if (obj->pPreserveAttachments) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->preserveAttachmentCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pPreserveAttachments" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->preserveAttachmentCount;
            print_uint32_t(obj->pPreserveAttachments[i], "", isCommaNeeded);
        }
@@ -14158,7 +12450,7 @@ static void print_VkSubpassDescription(const VkSubpassDescription * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSubpassDependency(VkSubpassDependency obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassDependency(VkSubpassDependency obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14184,7 +12476,7 @@ static void print_VkSubpassDependency(VkSubpassDependency obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSubpassDependency(const VkSubpassDependency * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassDependency(const VkSubpassDependency * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14211,7 +12503,7 @@ static void print_VkSubpassDependency(const VkSubpassDependency * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkRenderPassCreateInfo(VkRenderPassCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassCreateInfo(VkRenderPassCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14297,7 +12589,7 @@ static void print_VkRenderPassCreateInfo(VkRenderPassCreateInfo obj, const std::
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkRenderPassCreateInfo(const VkRenderPassCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassCreateInfo(const VkRenderPassCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14384,7 +12676,7 @@ static void print_VkRenderPassCreateInfo(const VkRenderPassCreateInfo * obj, con
          _OUT << "}" << std::endl;
 }
 
-static void print_VkCommandPoolCreateInfo(VkCommandPoolCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandPoolCreateInfo(VkCommandPoolCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14409,7 +12701,7 @@ static void print_VkCommandPoolCreateInfo(VkCommandPoolCreateInfo obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCommandPoolCreateInfo(const VkCommandPoolCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandPoolCreateInfo(const VkCommandPoolCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14435,7 +12727,7 @@ static void print_VkCommandPoolCreateInfo(const VkCommandPoolCreateInfo * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkCommandBufferAllocateInfo(VkCommandBufferAllocateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandBufferAllocateInfo(VkCommandBufferAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14463,7 +12755,7 @@ static void print_VkCommandBufferAllocateInfo(VkCommandBufferAllocateInfo obj, c
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCommandBufferAllocateInfo(const VkCommandBufferAllocateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandBufferAllocateInfo(const VkCommandBufferAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14492,7 +12784,7 @@ static void print_VkCommandBufferAllocateInfo(const VkCommandBufferAllocateInfo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkCommandBufferInheritanceInfo(VkCommandBufferInheritanceInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandBufferInheritanceInfo(VkCommandBufferInheritanceInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14527,7 +12819,7 @@ static void print_VkCommandBufferInheritanceInfo(VkCommandBufferInheritanceInfo
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCommandBufferInheritanceInfo(const VkCommandBufferInheritanceInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandBufferInheritanceInfo(const VkCommandBufferInheritanceInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14563,7 +12855,7 @@ static void print_VkCommandBufferInheritanceInfo(const VkCommandBufferInheritanc
          _OUT << "}" << std::endl;
 }
 
-static void print_VkCommandBufferBeginInfo(VkCommandBufferBeginInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandBufferBeginInfo(VkCommandBufferBeginInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14596,7 +12888,7 @@ static void print_VkCommandBufferBeginInfo(VkCommandBufferBeginInfo obj, const s
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCommandBufferBeginInfo(const VkCommandBufferBeginInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandBufferBeginInfo(const VkCommandBufferBeginInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14630,7 +12922,7 @@ static void print_VkCommandBufferBeginInfo(const VkCommandBufferBeginInfo * obj,
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBufferCopy(VkBufferCopy obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferCopy(VkBufferCopy obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14648,7 +12940,7 @@ static void print_VkBufferCopy(VkBufferCopy obj, const std::string& s, bool comm
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBufferCopy(const VkBufferCopy * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferCopy(const VkBufferCopy * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14667,7 +12959,7 @@ static void print_VkBufferCopy(const VkBufferCopy * obj, const std::string& s, b
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageSubresourceLayers(VkImageSubresourceLayers obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageSubresourceLayers(VkImageSubresourceLayers obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14687,7 +12979,7 @@ static void print_VkImageSubresourceLayers(VkImageSubresourceLayers obj, const s
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageSubresourceLayers(const VkImageSubresourceLayers * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageSubresourceLayers(const VkImageSubresourceLayers * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14708,7 +13000,7 @@ static void print_VkImageSubresourceLayers(const VkImageSubresourceLayers * obj,
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBufferImageCopy(VkBufferImageCopy obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferImageCopy(VkBufferImageCopy obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14744,7 +13036,7 @@ static void print_VkBufferImageCopy(VkBufferImageCopy obj, const std::string& s,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBufferImageCopy(const VkBufferImageCopy * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferImageCopy(const VkBufferImageCopy * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14781,7 +13073,7 @@ static void print_VkBufferImageCopy(const VkBufferImageCopy * obj, const std::st
          _OUT << "}" << std::endl;
 }
 
-static void print_VkClearColorValue(VkClearColorValue obj, const std::string& s, bool commaNeeded) {
+static void print_VkClearColorValue(VkClearColorValue obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14792,8 +13084,6 @@ static void print_VkClearColorValue(VkClearColorValue obj, const std::string& s,
      if (obj.float32) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 4; i++) {
-           std:: stringstream tmp;
-           tmp << "float32" << "_" << i;
            bool isCommaNeeded = (i+1) != 4;
            print_float(obj.float32[i], "", isCommaNeeded);
        }
@@ -14809,8 +13099,6 @@ static void print_VkClearColorValue(VkClearColorValue obj, const std::string& s,
      if (obj.int32) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 4; i++) {
-           std:: stringstream tmp;
-           tmp << "int32" << "_" << i;
            bool isCommaNeeded = (i+1) != 4;
            print_int32_t(obj.int32[i], "", isCommaNeeded);
        }
@@ -14826,8 +13114,6 @@ static void print_VkClearColorValue(VkClearColorValue obj, const std::string& s,
      if (obj.uint32) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 4; i++) {
-           std:: stringstream tmp;
-           tmp << "uint32" << "_" << i;
            bool isCommaNeeded = (i+1) != 4;
            print_uint32_t(obj.uint32[i], "", isCommaNeeded);
        }
@@ -14844,7 +13130,7 @@ static void print_VkClearColorValue(VkClearColorValue obj, const std::string& s,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkClearColorValue(const VkClearColorValue * obj, const std::string& s, bool commaNeeded) {
+static void print_VkClearColorValue(const VkClearColorValue * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14855,8 +13141,6 @@ static void print_VkClearColorValue(const VkClearColorValue * obj, const std::st
      if (obj->float32) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 4; i++) {
-           std:: stringstream tmp;
-           tmp << "float32" << "_" << i;
            bool isCommaNeeded = (i+1) != 4;
            print_float(obj->float32[i], "", isCommaNeeded);
        }
@@ -14872,8 +13156,6 @@ static void print_VkClearColorValue(const VkClearColorValue * obj, const std::st
      if (obj->int32) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 4; i++) {
-           std:: stringstream tmp;
-           tmp << "int32" << "_" << i;
            bool isCommaNeeded = (i+1) != 4;
            print_int32_t(obj->int32[i], "", isCommaNeeded);
        }
@@ -14889,8 +13171,6 @@ static void print_VkClearColorValue(const VkClearColorValue * obj, const std::st
      if (obj->uint32) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 4; i++) {
-           std:: stringstream tmp;
-           tmp << "uint32" << "_" << i;
            bool isCommaNeeded = (i+1) != 4;
            print_uint32_t(obj->uint32[i], "", isCommaNeeded);
        }
@@ -14908,7 +13188,7 @@ static void print_VkClearColorValue(const VkClearColorValue * obj, const std::st
          _OUT << "}" << std::endl;
 }
 
-static void print_VkClearDepthStencilValue(VkClearDepthStencilValue obj, const std::string& s, bool commaNeeded) {
+static void print_VkClearDepthStencilValue(VkClearDepthStencilValue obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14924,7 +13204,7 @@ static void print_VkClearDepthStencilValue(VkClearDepthStencilValue obj, const s
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkClearDepthStencilValue(const VkClearDepthStencilValue * obj, const std::string& s, bool commaNeeded) {
+static void print_VkClearDepthStencilValue(const VkClearDepthStencilValue * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14941,7 +13221,7 @@ static void print_VkClearDepthStencilValue(const VkClearDepthStencilValue * obj,
          _OUT << "}" << std::endl;
 }
 
-static void print_VkClearValue(VkClearValue obj, const std::string& s, bool commaNeeded) {
+static void print_VkClearValue(VkClearValue obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14961,7 +13241,7 @@ static void print_VkClearValue(VkClearValue obj, const std::string& s, bool comm
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkClearValue(const VkClearValue * obj, const std::string& s, bool commaNeeded) {
+static void print_VkClearValue(const VkClearValue * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -14982,7 +13262,7 @@ static void print_VkClearValue(const VkClearValue * obj, const std::string& s, b
          _OUT << "}" << std::endl;
 }
 
-static void print_VkClearAttachment(VkClearAttachment obj, const std::string& s, bool commaNeeded) {
+static void print_VkClearAttachment(VkClearAttachment obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -15000,7 +13280,7 @@ static void print_VkClearAttachment(VkClearAttachment obj, const std::string& s,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkClearAttachment(const VkClearAttachment * obj, const std::string& s, bool commaNeeded) {
+static void print_VkClearAttachment(const VkClearAttachment * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -15019,7 +13299,7 @@ static void print_VkClearAttachment(const VkClearAttachment * obj, const std::st
          _OUT << "}" << std::endl;
 }
 
-static void print_VkClearRect(VkClearRect obj, const std::string& s, bool commaNeeded) {
+static void print_VkClearRect(VkClearRect obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -15041,7 +13321,7 @@ static void print_VkClearRect(VkClearRect obj, const std::string& s, bool commaN
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkClearRect(const VkClearRect * obj, const std::string& s, bool commaNeeded) {
+static void print_VkClearRect(const VkClearRect * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -15064,7 +13344,7 @@ static void print_VkClearRect(const VkClearRect * obj, const std::string& s, boo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageBlit(VkImageBlit obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageBlit(VkImageBlit obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -15081,8 +13361,6 @@ static void print_VkImageBlit(VkImageBlit obj, const std::string& s, bool commaN
      if (obj.srcOffsets) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "srcOffsets" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_VkOffset3D(obj.srcOffsets[i], "", isCommaNeeded);
        }
@@ -15104,8 +13382,6 @@ static void print_VkImageBlit(VkImageBlit obj, const std::string& s, bool commaN
      if (obj.dstOffsets) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "dstOffsets" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_VkOffset3D(obj.dstOffsets[i], "", isCommaNeeded);
        }
@@ -15122,7 +13398,7 @@ static void print_VkImageBlit(VkImageBlit obj, const std::string& s, bool commaN
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageBlit(const VkImageBlit * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageBlit(const VkImageBlit * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -15139,8 +13415,6 @@ static void print_VkImageBlit(const VkImageBlit * obj, const std::string& s, boo
      if (obj->srcOffsets) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "srcOffsets" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_VkOffset3D(obj->srcOffsets[i], "", isCommaNeeded);
        }
@@ -15162,8 +13436,6 @@ static void print_VkImageBlit(const VkImageBlit * obj, const std::string& s, boo
      if (obj->dstOffsets) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "dstOffsets" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_VkOffset3D(obj->dstOffsets[i], "", isCommaNeeded);
        }
@@ -15181,7 +13453,7 @@ static void print_VkImageBlit(const VkImageBlit * obj, const std::string& s, boo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageCopy(VkImageCopy obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageCopy(VkImageCopy obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -15223,7 +13495,7 @@ static void print_VkImageCopy(VkImageCopy obj, const std::string& s, bool commaN
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageCopy(const VkImageCopy * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageCopy(const VkImageCopy * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -15266,7 +13538,7 @@ static void print_VkImageCopy(const VkImageCopy * obj, const std::string& s, boo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageResolve(VkImageResolve obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageResolve(VkImageResolve obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -15308,7 +13580,7 @@ static void print_VkImageResolve(VkImageResolve obj, const std::string& s, bool
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageResolve(const VkImageResolve * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageResolve(const VkImageResolve * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -15351,7 +13623,7 @@ static void print_VkImageResolve(const VkImageResolve * obj, const std::string&
          _OUT << "}" << std::endl;
 }
 
-static void print_VkRenderPassBeginInfo(VkRenderPassBeginInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassBeginInfo(VkRenderPassBeginInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -15385,8 +13657,6 @@ static void print_VkRenderPassBeginInfo(VkRenderPassBeginInfo obj, const std::st
      if (obj.pClearValues) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.clearValueCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pClearValues" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.clearValueCount;
            print_VkClearValue(obj.pClearValues[i], "", isCommaNeeded);
        }
@@ -15403,7 +13673,7 @@ static void print_VkRenderPassBeginInfo(VkRenderPassBeginInfo obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkRenderPassBeginInfo(const VkRenderPassBeginInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassBeginInfo(const VkRenderPassBeginInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -15437,8 +13707,6 @@ static void print_VkRenderPassBeginInfo(const VkRenderPassBeginInfo * obj, const
      if (obj->pClearValues) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->clearValueCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pClearValues" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->clearValueCount;
            print_VkClearValue(obj->pClearValues[i], "", isCommaNeeded);
        }
@@ -15456,14 +13724,14 @@ static void print_VkRenderPassBeginInfo(const VkRenderPassBeginInfo * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSamplerYcbcrConversion(VkSamplerYcbcrConversion obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerYcbcrConversion(VkSamplerYcbcrConversion obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkSamplerYcbcrConversion(const VkSamplerYcbcrConversion * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerYcbcrConversion(const VkSamplerYcbcrConversion * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -15482,7 +13750,7 @@ static std::map<deUint64, std::string> VkSubgroupFeatureFlagBits_map = {
     std::make_pair(1ULL << 7, "VK_SUBGROUP_FEATURE_QUAD_BIT"),
     std::make_pair(1ULL << 8, "VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV"),
 };
-static void print_VkSubgroupFeatureFlagBits(VkSubgroupFeatureFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubgroupFeatureFlagBits(VkSubgroupFeatureFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15490,7 +13758,7 @@ static void print_VkSubgroupFeatureFlagBits(VkSubgroupFeatureFlagBits obj, const
      else
          _OUT << "\"" << VkSubgroupFeatureFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkSubgroupFeatureFlagBits(const VkSubgroupFeatureFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubgroupFeatureFlagBits(const VkSubgroupFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15505,7 +13773,7 @@ static std::map<deUint64, std::string> VkPeerMemoryFeatureFlagBits_map = {
     std::make_pair(1ULL << 2, "VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT"),
     std::make_pair(1ULL << 3, "VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT"),
 };
-static void print_VkPeerMemoryFeatureFlagBits(VkPeerMemoryFeatureFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkPeerMemoryFeatureFlagBits(VkPeerMemoryFeatureFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15513,7 +13781,7 @@ static void print_VkPeerMemoryFeatureFlagBits(VkPeerMemoryFeatureFlagBits obj, c
      else
          _OUT << "\"" << VkPeerMemoryFeatureFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkPeerMemoryFeatureFlagBits(const VkPeerMemoryFeatureFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPeerMemoryFeatureFlagBits(const VkPeerMemoryFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15527,7 +13795,7 @@ static std::map<deUint64, std::string> VkMemoryAllocateFlagBits_map = {
     std::make_pair(1ULL << 1, "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT"),
     std::make_pair(1ULL << 2, "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT"),
 };
-static void print_VkMemoryAllocateFlagBits(VkMemoryAllocateFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryAllocateFlagBits(VkMemoryAllocateFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15535,7 +13803,7 @@ static void print_VkMemoryAllocateFlagBits(VkMemoryAllocateFlagBits obj, const s
      else
          _OUT << "\"" << VkMemoryAllocateFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkMemoryAllocateFlagBits(const VkMemoryAllocateFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryAllocateFlagBits(const VkMemoryAllocateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15548,7 +13816,7 @@ static std::map<deUint64, std::string> VkPointClippingBehavior_map = {
     std::make_pair(0, "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES"),
     std::make_pair(1, "VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY"),
 };
-static void print_VkPointClippingBehavior(VkPointClippingBehavior obj, const std::string& str, bool commaNeeded) {
+static void print_VkPointClippingBehavior(VkPointClippingBehavior obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15556,7 +13824,7 @@ static void print_VkPointClippingBehavior(VkPointClippingBehavior obj, const std
      else
          _OUT << "\"" << VkPointClippingBehavior_map[obj] << "\"" << std::endl;
 }
-static void print_VkPointClippingBehavior(const VkPointClippingBehavior * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPointClippingBehavior(const VkPointClippingBehavior * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15569,7 +13837,7 @@ static std::map<deUint64, std::string> VkTessellationDomainOrigin_map = {
     std::make_pair(0, "VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT"),
     std::make_pair(1, "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT"),
 };
-static void print_VkTessellationDomainOrigin(VkTessellationDomainOrigin obj, const std::string& str, bool commaNeeded) {
+static void print_VkTessellationDomainOrigin(VkTessellationDomainOrigin obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15577,7 +13845,7 @@ static void print_VkTessellationDomainOrigin(VkTessellationDomainOrigin obj, con
      else
          _OUT << "\"" << VkTessellationDomainOrigin_map[obj] << "\"" << std::endl;
 }
-static void print_VkTessellationDomainOrigin(const VkTessellationDomainOrigin * obj, const std::string& str, bool commaNeeded) {
+static void print_VkTessellationDomainOrigin(const VkTessellationDomainOrigin * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15593,7 +13861,7 @@ static std::map<deUint64, std::string> VkSamplerYcbcrModelConversion_map = {
     std::make_pair(3, "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601"),
     std::make_pair(4, "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020"),
 };
-static void print_VkSamplerYcbcrModelConversion(VkSamplerYcbcrModelConversion obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerYcbcrModelConversion(VkSamplerYcbcrModelConversion obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15601,7 +13869,7 @@ static void print_VkSamplerYcbcrModelConversion(VkSamplerYcbcrModelConversion ob
      else
          _OUT << "\"" << VkSamplerYcbcrModelConversion_map[obj] << "\"" << std::endl;
 }
-static void print_VkSamplerYcbcrModelConversion(const VkSamplerYcbcrModelConversion * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerYcbcrModelConversion(const VkSamplerYcbcrModelConversion * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15614,7 +13882,7 @@ static std::map<deUint64, std::string> VkSamplerYcbcrRange_map = {
     std::make_pair(0, "VK_SAMPLER_YCBCR_RANGE_ITU_FULL"),
     std::make_pair(1, "VK_SAMPLER_YCBCR_RANGE_ITU_NARROW"),
 };
-static void print_VkSamplerYcbcrRange(VkSamplerYcbcrRange obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerYcbcrRange(VkSamplerYcbcrRange obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15622,7 +13890,7 @@ static void print_VkSamplerYcbcrRange(VkSamplerYcbcrRange obj, const std::string
      else
          _OUT << "\"" << VkSamplerYcbcrRange_map[obj] << "\"" << std::endl;
 }
-static void print_VkSamplerYcbcrRange(const VkSamplerYcbcrRange * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerYcbcrRange(const VkSamplerYcbcrRange * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15635,7 +13903,7 @@ static std::map<deUint64, std::string> VkChromaLocation_map = {
     std::make_pair(0, "VK_CHROMA_LOCATION_COSITED_EVEN"),
     std::make_pair(1, "VK_CHROMA_LOCATION_MIDPOINT"),
 };
-static void print_VkChromaLocation(VkChromaLocation obj, const std::string& str, bool commaNeeded) {
+static void print_VkChromaLocation(VkChromaLocation obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15643,7 +13911,7 @@ static void print_VkChromaLocation(VkChromaLocation obj, const std::string& str,
      else
          _OUT << "\"" << VkChromaLocation_map[obj] << "\"" << std::endl;
 }
-static void print_VkChromaLocation(const VkChromaLocation * obj, const std::string& str, bool commaNeeded) {
+static void print_VkChromaLocation(const VkChromaLocation * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15668,7 +13936,7 @@ static std::map<deUint64, std::string> VkExternalMemoryHandleTypeFlagBits_map =
     std::make_pair(1ULL << 12, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV"),
     std::make_pair(1ULL << 13, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_RESERVED_13_BIT_NV"),
 };
-static void print_VkExternalMemoryHandleTypeFlagBits(VkExternalMemoryHandleTypeFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalMemoryHandleTypeFlagBits(VkExternalMemoryHandleTypeFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15676,7 +13944,7 @@ static void print_VkExternalMemoryHandleTypeFlagBits(VkExternalMemoryHandleTypeF
      else
          _OUT << "\"" << VkExternalMemoryHandleTypeFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkExternalMemoryHandleTypeFlagBits(const VkExternalMemoryHandleTypeFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalMemoryHandleTypeFlagBits(const VkExternalMemoryHandleTypeFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15690,7 +13958,7 @@ static std::map<deUint64, std::string> VkExternalMemoryFeatureFlagBits_map = {
     std::make_pair(1ULL << 1, "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT"),
     std::make_pair(1ULL << 2, "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT"),
 };
-static void print_VkExternalMemoryFeatureFlagBits(VkExternalMemoryFeatureFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalMemoryFeatureFlagBits(VkExternalMemoryFeatureFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15698,7 +13966,7 @@ static void print_VkExternalMemoryFeatureFlagBits(VkExternalMemoryFeatureFlagBit
      else
          _OUT << "\"" << VkExternalMemoryFeatureFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkExternalMemoryFeatureFlagBits(const VkExternalMemoryFeatureFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalMemoryFeatureFlagBits(const VkExternalMemoryFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15715,7 +13983,7 @@ static std::map<deUint64, std::string> VkExternalFenceHandleTypeFlagBits_map = {
     std::make_pair(1ULL << 4, "VK_EXTERNAL_FENCE_HANDLE_TYPE_RESERVED_4_BIT_NV"),
     std::make_pair(1ULL << 5, "VK_EXTERNAL_FENCE_HANDLE_TYPE_RESERVED_5_BIT_NV"),
 };
-static void print_VkExternalFenceHandleTypeFlagBits(VkExternalFenceHandleTypeFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalFenceHandleTypeFlagBits(VkExternalFenceHandleTypeFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15723,7 +13991,7 @@ static void print_VkExternalFenceHandleTypeFlagBits(VkExternalFenceHandleTypeFla
      else
          _OUT << "\"" << VkExternalFenceHandleTypeFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkExternalFenceHandleTypeFlagBits(const VkExternalFenceHandleTypeFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalFenceHandleTypeFlagBits(const VkExternalFenceHandleTypeFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15736,7 +14004,7 @@ static std::map<deUint64, std::string> VkExternalFenceFeatureFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT"),
     std::make_pair(1ULL << 1, "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT"),
 };
-static void print_VkExternalFenceFeatureFlagBits(VkExternalFenceFeatureFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalFenceFeatureFlagBits(VkExternalFenceFeatureFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15744,7 +14012,7 @@ static void print_VkExternalFenceFeatureFlagBits(VkExternalFenceFeatureFlagBits
      else
          _OUT << "\"" << VkExternalFenceFeatureFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkExternalFenceFeatureFlagBits(const VkExternalFenceFeatureFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalFenceFeatureFlagBits(const VkExternalFenceFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15756,7 +14024,7 @@ static void print_VkExternalFenceFeatureFlagBits(const VkExternalFenceFeatureFla
 static std::map<deUint64, std::string> VkFenceImportFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_FENCE_IMPORT_TEMPORARY_BIT"),
 };
-static void print_VkFenceImportFlagBits(VkFenceImportFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkFenceImportFlagBits(VkFenceImportFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15764,7 +14032,7 @@ static void print_VkFenceImportFlagBits(VkFenceImportFlagBits obj, const std::st
      else
          _OUT << "\"" << VkFenceImportFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkFenceImportFlagBits(const VkFenceImportFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFenceImportFlagBits(const VkFenceImportFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15776,7 +14044,7 @@ static void print_VkFenceImportFlagBits(const VkFenceImportFlagBits * obj, const
 static std::map<deUint64, std::string> VkSemaphoreImportFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT"),
 };
-static void print_VkSemaphoreImportFlagBits(VkSemaphoreImportFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphoreImportFlagBits(VkSemaphoreImportFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15784,7 +14052,7 @@ static void print_VkSemaphoreImportFlagBits(VkSemaphoreImportFlagBits obj, const
      else
          _OUT << "\"" << VkSemaphoreImportFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkSemaphoreImportFlagBits(const VkSemaphoreImportFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphoreImportFlagBits(const VkSemaphoreImportFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15803,7 +14071,7 @@ static std::map<deUint64, std::string> VkExternalSemaphoreHandleTypeFlagBits_map
     std::make_pair(1ULL << 5, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_RESERVED_5_BIT_NV"),
     std::make_pair(1ULL << 6, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_RESERVED_6_BIT_NV"),
 };
-static void print_VkExternalSemaphoreHandleTypeFlagBits(VkExternalSemaphoreHandleTypeFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalSemaphoreHandleTypeFlagBits(VkExternalSemaphoreHandleTypeFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15811,7 +14079,7 @@ static void print_VkExternalSemaphoreHandleTypeFlagBits(VkExternalSemaphoreHandl
      else
          _OUT << "\"" << VkExternalSemaphoreHandleTypeFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkExternalSemaphoreHandleTypeFlagBits(const VkExternalSemaphoreHandleTypeFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalSemaphoreHandleTypeFlagBits(const VkExternalSemaphoreHandleTypeFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15824,7 +14092,7 @@ static std::map<deUint64, std::string> VkExternalSemaphoreFeatureFlagBits_map =
     std::make_pair(1ULL << 0, "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT"),
     std::make_pair(1ULL << 1, "VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT"),
 };
-static void print_VkExternalSemaphoreFeatureFlagBits(VkExternalSemaphoreFeatureFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalSemaphoreFeatureFlagBits(VkExternalSemaphoreFeatureFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15832,7 +14100,7 @@ static void print_VkExternalSemaphoreFeatureFlagBits(VkExternalSemaphoreFeatureF
      else
          _OUT << "\"" << VkExternalSemaphoreFeatureFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkExternalSemaphoreFeatureFlagBits(const VkExternalSemaphoreFeatureFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalSemaphoreFeatureFlagBits(const VkExternalSemaphoreFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -15841,7 +14109,7 @@ static void print_VkExternalSemaphoreFeatureFlagBits(const VkExternalSemaphoreFe
          _OUT << "\"" << VkExternalSemaphoreFeatureFlagBits_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkSubgroupFeatureFlags(VkSubgroupFeatureFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubgroupFeatureFlags(VkSubgroupFeatureFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -15863,7 +14131,7 @@ static void print_VkSubgroupFeatureFlags(VkSubgroupFeatureFlags obj, const std::
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkSubgroupFeatureFlags(const VkSubgroupFeatureFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubgroupFeatureFlags(const VkSubgroupFeatureFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -15886,7 +14154,7 @@ static void print_VkSubgroupFeatureFlags(const VkSubgroupFeatureFlags * obj, con
      _OUT << std::endl;
 }
 
-static void print_VkPeerMemoryFeatureFlags(VkPeerMemoryFeatureFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkPeerMemoryFeatureFlags(VkPeerMemoryFeatureFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -15908,7 +14176,7 @@ static void print_VkPeerMemoryFeatureFlags(VkPeerMemoryFeatureFlags obj, const s
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkPeerMemoryFeatureFlags(const VkPeerMemoryFeatureFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPeerMemoryFeatureFlags(const VkPeerMemoryFeatureFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -15931,7 +14199,7 @@ static void print_VkPeerMemoryFeatureFlags(const VkPeerMemoryFeatureFlags * obj,
      _OUT << std::endl;
 }
 
-static void print_VkMemoryAllocateFlags(VkMemoryAllocateFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryAllocateFlags(VkMemoryAllocateFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -15953,7 +14221,7 @@ static void print_VkMemoryAllocateFlags(VkMemoryAllocateFlags obj, const std::st
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkMemoryAllocateFlags(const VkMemoryAllocateFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkMemoryAllocateFlags(const VkMemoryAllocateFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -15976,7 +14244,7 @@ static void print_VkMemoryAllocateFlags(const VkMemoryAllocateFlags * obj, const
      _OUT << std::endl;
 }
 
-static void print_VkExternalMemoryHandleTypeFlags(VkExternalMemoryHandleTypeFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalMemoryHandleTypeFlags(VkExternalMemoryHandleTypeFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -15998,7 +14266,7 @@ static void print_VkExternalMemoryHandleTypeFlags(VkExternalMemoryHandleTypeFlag
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkExternalMemoryHandleTypeFlags(const VkExternalMemoryHandleTypeFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalMemoryHandleTypeFlags(const VkExternalMemoryHandleTypeFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16021,7 +14289,7 @@ static void print_VkExternalMemoryHandleTypeFlags(const VkExternalMemoryHandleTy
      _OUT << std::endl;
 }
 
-static void print_VkExternalMemoryFeatureFlags(VkExternalMemoryFeatureFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalMemoryFeatureFlags(VkExternalMemoryFeatureFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16043,7 +14311,7 @@ static void print_VkExternalMemoryFeatureFlags(VkExternalMemoryFeatureFlags obj,
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkExternalMemoryFeatureFlags(const VkExternalMemoryFeatureFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalMemoryFeatureFlags(const VkExternalMemoryFeatureFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16066,7 +14334,7 @@ static void print_VkExternalMemoryFeatureFlags(const VkExternalMemoryFeatureFlag
      _OUT << std::endl;
 }
 
-static void print_VkExternalFenceHandleTypeFlags(VkExternalFenceHandleTypeFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalFenceHandleTypeFlags(VkExternalFenceHandleTypeFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16088,7 +14356,7 @@ static void print_VkExternalFenceHandleTypeFlags(VkExternalFenceHandleTypeFlags
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkExternalFenceHandleTypeFlags(const VkExternalFenceHandleTypeFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalFenceHandleTypeFlags(const VkExternalFenceHandleTypeFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16111,7 +14379,7 @@ static void print_VkExternalFenceHandleTypeFlags(const VkExternalFenceHandleType
      _OUT << std::endl;
 }
 
-static void print_VkExternalFenceFeatureFlags(VkExternalFenceFeatureFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalFenceFeatureFlags(VkExternalFenceFeatureFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16133,7 +14401,7 @@ static void print_VkExternalFenceFeatureFlags(VkExternalFenceFeatureFlags obj, c
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkExternalFenceFeatureFlags(const VkExternalFenceFeatureFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalFenceFeatureFlags(const VkExternalFenceFeatureFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16156,7 +14424,7 @@ static void print_VkExternalFenceFeatureFlags(const VkExternalFenceFeatureFlags
      _OUT << std::endl;
 }
 
-static void print_VkFenceImportFlags(VkFenceImportFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkFenceImportFlags(VkFenceImportFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16178,7 +14446,7 @@ static void print_VkFenceImportFlags(VkFenceImportFlags obj, const std::string&
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkFenceImportFlags(const VkFenceImportFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFenceImportFlags(const VkFenceImportFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16201,7 +14469,7 @@ static void print_VkFenceImportFlags(const VkFenceImportFlags * obj, const std::
      _OUT << std::endl;
 }
 
-static void print_VkSemaphoreImportFlags(VkSemaphoreImportFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphoreImportFlags(VkSemaphoreImportFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16223,7 +14491,7 @@ static void print_VkSemaphoreImportFlags(VkSemaphoreImportFlags obj, const std::
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkSemaphoreImportFlags(const VkSemaphoreImportFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphoreImportFlags(const VkSemaphoreImportFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16246,7 +14514,7 @@ static void print_VkSemaphoreImportFlags(const VkSemaphoreImportFlags * obj, con
      _OUT << std::endl;
 }
 
-static void print_VkExternalSemaphoreHandleTypeFlags(VkExternalSemaphoreHandleTypeFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalSemaphoreHandleTypeFlags(VkExternalSemaphoreHandleTypeFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16268,7 +14536,7 @@ static void print_VkExternalSemaphoreHandleTypeFlags(VkExternalSemaphoreHandleTy
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkExternalSemaphoreHandleTypeFlags(const VkExternalSemaphoreHandleTypeFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalSemaphoreHandleTypeFlags(const VkExternalSemaphoreHandleTypeFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16291,7 +14559,7 @@ static void print_VkExternalSemaphoreHandleTypeFlags(const VkExternalSemaphoreHa
      _OUT << std::endl;
 }
 
-static void print_VkExternalSemaphoreFeatureFlags(VkExternalSemaphoreFeatureFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalSemaphoreFeatureFlags(VkExternalSemaphoreFeatureFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16313,7 +14581,7 @@ static void print_VkExternalSemaphoreFeatureFlags(VkExternalSemaphoreFeatureFlag
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkExternalSemaphoreFeatureFlags(const VkExternalSemaphoreFeatureFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkExternalSemaphoreFeatureFlags(const VkExternalSemaphoreFeatureFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -16336,7 +14604,7 @@ static void print_VkExternalSemaphoreFeatureFlags(const VkExternalSemaphoreFeatu
      _OUT << std::endl;
 }
 
-static void print_VkPhysicalDeviceSubgroupProperties(VkPhysicalDeviceSubgroupProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSubgroupProperties(VkPhysicalDeviceSubgroupProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16365,7 +14633,7 @@ static void print_VkPhysicalDeviceSubgroupProperties(VkPhysicalDeviceSubgroupPro
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceSubgroupProperties(const VkPhysicalDeviceSubgroupProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSubgroupProperties(const VkPhysicalDeviceSubgroupProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16395,7 +14663,7 @@ static void print_VkPhysicalDeviceSubgroupProperties(const VkPhysicalDeviceSubgr
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBindBufferMemoryInfo(VkBindBufferMemoryInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkBindBufferMemoryInfo(VkBindBufferMemoryInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16424,7 +14692,7 @@ static void print_VkBindBufferMemoryInfo(VkBindBufferMemoryInfo obj, const std::
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBindBufferMemoryInfo(const VkBindBufferMemoryInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBindBufferMemoryInfo(const VkBindBufferMemoryInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16454,7 +14722,7 @@ static void print_VkBindBufferMemoryInfo(const VkBindBufferMemoryInfo * obj, con
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBindImageMemoryInfo(VkBindImageMemoryInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkBindImageMemoryInfo(VkBindImageMemoryInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16483,7 +14751,7 @@ static void print_VkBindImageMemoryInfo(VkBindImageMemoryInfo obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBindImageMemoryInfo(const VkBindImageMemoryInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBindImageMemoryInfo(const VkBindImageMemoryInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16513,7 +14781,7 @@ static void print_VkBindImageMemoryInfo(const VkBindImageMemoryInfo * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDevice16BitStorageFeatures(VkPhysicalDevice16BitStorageFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevice16BitStorageFeatures(VkPhysicalDevice16BitStorageFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16542,7 +14810,7 @@ static void print_VkPhysicalDevice16BitStorageFeatures(VkPhysicalDevice16BitStor
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDevice16BitStorageFeatures(const VkPhysicalDevice16BitStorageFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevice16BitStorageFeatures(const VkPhysicalDevice16BitStorageFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16572,7 +14840,7 @@ static void print_VkPhysicalDevice16BitStorageFeatures(const VkPhysicalDevice16B
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMemoryDedicatedRequirements(VkMemoryDedicatedRequirements obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryDedicatedRequirements(VkMemoryDedicatedRequirements obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16597,7 +14865,7 @@ static void print_VkMemoryDedicatedRequirements(VkMemoryDedicatedRequirements ob
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryDedicatedRequirements(const VkMemoryDedicatedRequirements * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryDedicatedRequirements(const VkMemoryDedicatedRequirements * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16623,7 +14891,7 @@ static void print_VkMemoryDedicatedRequirements(const VkMemoryDedicatedRequireme
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMemoryDedicatedAllocateInfo(VkMemoryDedicatedAllocateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryDedicatedAllocateInfo(VkMemoryDedicatedAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16650,7 +14918,7 @@ static void print_VkMemoryDedicatedAllocateInfo(VkMemoryDedicatedAllocateInfo ob
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryDedicatedAllocateInfo(const VkMemoryDedicatedAllocateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryDedicatedAllocateInfo(const VkMemoryDedicatedAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16678,7 +14946,7 @@ static void print_VkMemoryDedicatedAllocateInfo(const VkMemoryDedicatedAllocateI
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMemoryAllocateFlagsInfo(VkMemoryAllocateFlagsInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryAllocateFlagsInfo(VkMemoryAllocateFlagsInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16703,7 +14971,7 @@ static void print_VkMemoryAllocateFlagsInfo(VkMemoryAllocateFlagsInfo obj, const
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryAllocateFlagsInfo(const VkMemoryAllocateFlagsInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryAllocateFlagsInfo(const VkMemoryAllocateFlagsInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16729,7 +14997,7 @@ static void print_VkMemoryAllocateFlagsInfo(const VkMemoryAllocateFlagsInfo * ob
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDeviceGroupRenderPassBeginInfo(VkDeviceGroupRenderPassBeginInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupRenderPassBeginInfo(VkDeviceGroupRenderPassBeginInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16773,7 +15041,7 @@ static void print_VkDeviceGroupRenderPassBeginInfo(VkDeviceGroupRenderPassBeginI
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceGroupRenderPassBeginInfo(const VkDeviceGroupRenderPassBeginInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupRenderPassBeginInfo(const VkDeviceGroupRenderPassBeginInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16818,7 +15086,7 @@ static void print_VkDeviceGroupRenderPassBeginInfo(const VkDeviceGroupRenderPass
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDeviceGroupCommandBufferBeginInfo(VkDeviceGroupCommandBufferBeginInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupCommandBufferBeginInfo(VkDeviceGroupCommandBufferBeginInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16841,7 +15109,7 @@ static void print_VkDeviceGroupCommandBufferBeginInfo(VkDeviceGroupCommandBuffer
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceGroupCommandBufferBeginInfo(const VkDeviceGroupCommandBufferBeginInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupCommandBufferBeginInfo(const VkDeviceGroupCommandBufferBeginInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16865,7 +15133,7 @@ static void print_VkDeviceGroupCommandBufferBeginInfo(const VkDeviceGroupCommand
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDeviceGroupSubmitInfo(VkDeviceGroupSubmitInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupSubmitInfo(VkDeviceGroupSubmitInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16887,8 +15155,6 @@ static void print_VkDeviceGroupSubmitInfo(VkDeviceGroupSubmitInfo obj, const std
      if (obj.pWaitSemaphoreDeviceIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.waitSemaphoreCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pWaitSemaphoreDeviceIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.waitSemaphoreCount;
            print_uint32_t(obj.pWaitSemaphoreDeviceIndices[i], "", isCommaNeeded);
        }
@@ -16906,8 +15172,6 @@ static void print_VkDeviceGroupSubmitInfo(VkDeviceGroupSubmitInfo obj, const std
      if (obj.pCommandBufferDeviceMasks) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.commandBufferCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pCommandBufferDeviceMasks" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.commandBufferCount;
            print_uint32_t(obj.pCommandBufferDeviceMasks[i], "", isCommaNeeded);
        }
@@ -16925,8 +15189,6 @@ static void print_VkDeviceGroupSubmitInfo(VkDeviceGroupSubmitInfo obj, const std
      if (obj.pSignalSemaphoreDeviceIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.signalSemaphoreCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pSignalSemaphoreDeviceIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.signalSemaphoreCount;
            print_uint32_t(obj.pSignalSemaphoreDeviceIndices[i], "", isCommaNeeded);
        }
@@ -16943,7 +15205,7 @@ static void print_VkDeviceGroupSubmitInfo(VkDeviceGroupSubmitInfo obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceGroupSubmitInfo(const VkDeviceGroupSubmitInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupSubmitInfo(const VkDeviceGroupSubmitInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -16965,8 +15227,6 @@ static void print_VkDeviceGroupSubmitInfo(const VkDeviceGroupSubmitInfo * obj, c
      if (obj->pWaitSemaphoreDeviceIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->waitSemaphoreCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pWaitSemaphoreDeviceIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->waitSemaphoreCount;
            print_uint32_t(obj->pWaitSemaphoreDeviceIndices[i], "", isCommaNeeded);
        }
@@ -16984,8 +15244,6 @@ static void print_VkDeviceGroupSubmitInfo(const VkDeviceGroupSubmitInfo * obj, c
      if (obj->pCommandBufferDeviceMasks) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->commandBufferCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pCommandBufferDeviceMasks" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->commandBufferCount;
            print_uint32_t(obj->pCommandBufferDeviceMasks[i], "", isCommaNeeded);
        }
@@ -17003,8 +15261,6 @@ static void print_VkDeviceGroupSubmitInfo(const VkDeviceGroupSubmitInfo * obj, c
      if (obj->pSignalSemaphoreDeviceIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->signalSemaphoreCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pSignalSemaphoreDeviceIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->signalSemaphoreCount;
            print_uint32_t(obj->pSignalSemaphoreDeviceIndices[i], "", isCommaNeeded);
        }
@@ -17022,7 +15278,7 @@ static void print_VkDeviceGroupSubmitInfo(const VkDeviceGroupSubmitInfo * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBindBufferMemoryDeviceGroupInfo(VkBindBufferMemoryDeviceGroupInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkBindBufferMemoryDeviceGroupInfo(VkBindBufferMemoryDeviceGroupInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17044,8 +15300,6 @@ static void print_VkBindBufferMemoryDeviceGroupInfo(VkBindBufferMemoryDeviceGrou
      if (obj.pDeviceIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.deviceIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDeviceIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.deviceIndexCount;
            print_uint32_t(obj.pDeviceIndices[i], "", isCommaNeeded);
        }
@@ -17062,7 +15316,7 @@ static void print_VkBindBufferMemoryDeviceGroupInfo(VkBindBufferMemoryDeviceGrou
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBindBufferMemoryDeviceGroupInfo(const VkBindBufferMemoryDeviceGroupInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBindBufferMemoryDeviceGroupInfo(const VkBindBufferMemoryDeviceGroupInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17084,8 +15338,6 @@ static void print_VkBindBufferMemoryDeviceGroupInfo(const VkBindBufferMemoryDevi
      if (obj->pDeviceIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->deviceIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDeviceIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->deviceIndexCount;
            print_uint32_t(obj->pDeviceIndices[i], "", isCommaNeeded);
        }
@@ -17103,7 +15355,7 @@ static void print_VkBindBufferMemoryDeviceGroupInfo(const VkBindBufferMemoryDevi
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBindImageMemoryDeviceGroupInfo(VkBindImageMemoryDeviceGroupInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkBindImageMemoryDeviceGroupInfo(VkBindImageMemoryDeviceGroupInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17125,8 +15377,6 @@ static void print_VkBindImageMemoryDeviceGroupInfo(VkBindImageMemoryDeviceGroupI
      if (obj.pDeviceIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.deviceIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDeviceIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.deviceIndexCount;
            print_uint32_t(obj.pDeviceIndices[i], "", isCommaNeeded);
        }
@@ -17164,7 +15414,7 @@ static void print_VkBindImageMemoryDeviceGroupInfo(VkBindImageMemoryDeviceGroupI
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBindImageMemoryDeviceGroupInfo(const VkBindImageMemoryDeviceGroupInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBindImageMemoryDeviceGroupInfo(const VkBindImageMemoryDeviceGroupInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17186,8 +15436,6 @@ static void print_VkBindImageMemoryDeviceGroupInfo(const VkBindImageMemoryDevice
      if (obj->pDeviceIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->deviceIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDeviceIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->deviceIndexCount;
            print_uint32_t(obj->pDeviceIndices[i], "", isCommaNeeded);
        }
@@ -17226,7 +15474,7 @@ static void print_VkBindImageMemoryDeviceGroupInfo(const VkBindImageMemoryDevice
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceGroupProperties(VkPhysicalDeviceGroupProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceGroupProperties(VkPhysicalDeviceGroupProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17268,7 +15516,7 @@ static void print_VkPhysicalDeviceGroupProperties(VkPhysicalDeviceGroupPropertie
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceGroupProperties(const VkPhysicalDeviceGroupProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceGroupProperties(const VkPhysicalDeviceGroupProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17311,7 +15559,7 @@ static void print_VkPhysicalDeviceGroupProperties(const VkPhysicalDeviceGroupPro
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDeviceGroupDeviceCreateInfo(VkDeviceGroupDeviceCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupDeviceCreateInfo(VkDeviceGroupDeviceCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17351,7 +15599,7 @@ static void print_VkDeviceGroupDeviceCreateInfo(VkDeviceGroupDeviceCreateInfo ob
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceGroupDeviceCreateInfo(const VkDeviceGroupDeviceCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupDeviceCreateInfo(const VkDeviceGroupDeviceCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17392,7 +15640,7 @@ static void print_VkDeviceGroupDeviceCreateInfo(const VkDeviceGroupDeviceCreateI
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBufferMemoryRequirementsInfo2(VkBufferMemoryRequirementsInfo2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferMemoryRequirementsInfo2(VkBufferMemoryRequirementsInfo2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17416,7 +15664,7 @@ static void print_VkBufferMemoryRequirementsInfo2(VkBufferMemoryRequirementsInfo
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBufferMemoryRequirementsInfo2(const VkBufferMemoryRequirementsInfo2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferMemoryRequirementsInfo2(const VkBufferMemoryRequirementsInfo2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17441,7 +15689,7 @@ static void print_VkBufferMemoryRequirementsInfo2(const VkBufferMemoryRequiremen
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageMemoryRequirementsInfo2(VkImageMemoryRequirementsInfo2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageMemoryRequirementsInfo2(VkImageMemoryRequirementsInfo2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17465,7 +15713,7 @@ static void print_VkImageMemoryRequirementsInfo2(VkImageMemoryRequirementsInfo2
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageMemoryRequirementsInfo2(const VkImageMemoryRequirementsInfo2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageMemoryRequirementsInfo2(const VkImageMemoryRequirementsInfo2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17490,7 +15738,7 @@ static void print_VkImageMemoryRequirementsInfo2(const VkImageMemoryRequirements
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMemoryRequirements2(VkMemoryRequirements2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryRequirements2(VkMemoryRequirements2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17517,7 +15765,7 @@ static void print_VkMemoryRequirements2(VkMemoryRequirements2 obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryRequirements2(const VkMemoryRequirements2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryRequirements2(const VkMemoryRequirements2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17545,7 +15793,7 @@ static void print_VkMemoryRequirements2(const VkMemoryRequirements2 * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceFeatures2(VkPhysicalDeviceFeatures2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFeatures2(VkPhysicalDeviceFeatures2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17572,7 +15820,7 @@ static void print_VkPhysicalDeviceFeatures2(VkPhysicalDeviceFeatures2 obj, const
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceFeatures2(const VkPhysicalDeviceFeatures2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFeatures2(const VkPhysicalDeviceFeatures2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17600,7 +15848,7 @@ static void print_VkPhysicalDeviceFeatures2(const VkPhysicalDeviceFeatures2 * ob
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceProperties2(VkPhysicalDeviceProperties2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceProperties2(VkPhysicalDeviceProperties2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17627,7 +15875,7 @@ static void print_VkPhysicalDeviceProperties2(VkPhysicalDeviceProperties2 obj, c
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceProperties2(const VkPhysicalDeviceProperties2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceProperties2(const VkPhysicalDeviceProperties2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17655,7 +15903,7 @@ static void print_VkPhysicalDeviceProperties2(const VkPhysicalDeviceProperties2
          _OUT << "}" << std::endl;
 }
 
-static void print_VkFormatProperties2(VkFormatProperties2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkFormatProperties2(VkFormatProperties2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17682,7 +15930,7 @@ static void print_VkFormatProperties2(VkFormatProperties2 obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkFormatProperties2(const VkFormatProperties2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkFormatProperties2(const VkFormatProperties2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17710,7 +15958,7 @@ static void print_VkFormatProperties2(const VkFormatProperties2 * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageFormatProperties2(VkImageFormatProperties2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageFormatProperties2(VkImageFormatProperties2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17737,7 +15985,7 @@ static void print_VkImageFormatProperties2(VkImageFormatProperties2 obj, const s
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageFormatProperties2(const VkImageFormatProperties2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageFormatProperties2(const VkImageFormatProperties2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17765,7 +16013,7 @@ static void print_VkImageFormatProperties2(const VkImageFormatProperties2 * obj,
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceImageFormatInfo2(VkPhysicalDeviceImageFormatInfo2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceImageFormatInfo2(VkPhysicalDeviceImageFormatInfo2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17796,7 +16044,7 @@ static void print_VkPhysicalDeviceImageFormatInfo2(VkPhysicalDeviceImageFormatIn
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceImageFormatInfo2(const VkPhysicalDeviceImageFormatInfo2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceImageFormatInfo2(const VkPhysicalDeviceImageFormatInfo2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17828,7 +16076,7 @@ static void print_VkPhysicalDeviceImageFormatInfo2(const VkPhysicalDeviceImageFo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkQueueFamilyProperties2(VkQueueFamilyProperties2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkQueueFamilyProperties2(VkQueueFamilyProperties2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17855,7 +16103,7 @@ static void print_VkQueueFamilyProperties2(VkQueueFamilyProperties2 obj, const s
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkQueueFamilyProperties2(const VkQueueFamilyProperties2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkQueueFamilyProperties2(const VkQueueFamilyProperties2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17883,7 +16131,7 @@ static void print_VkQueueFamilyProperties2(const VkQueueFamilyProperties2 * obj,
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceMemoryProperties2(VkPhysicalDeviceMemoryProperties2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceMemoryProperties2(VkPhysicalDeviceMemoryProperties2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17910,7 +16158,7 @@ static void print_VkPhysicalDeviceMemoryProperties2(VkPhysicalDeviceMemoryProper
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceMemoryProperties2(const VkPhysicalDeviceMemoryProperties2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceMemoryProperties2(const VkPhysicalDeviceMemoryProperties2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17938,7 +16186,7 @@ static void print_VkPhysicalDeviceMemoryProperties2(const VkPhysicalDeviceMemory
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDevicePointClippingProperties(VkPhysicalDevicePointClippingProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevicePointClippingProperties(VkPhysicalDevicePointClippingProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17961,7 +16209,7 @@ static void print_VkPhysicalDevicePointClippingProperties(VkPhysicalDevicePointC
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDevicePointClippingProperties(const VkPhysicalDevicePointClippingProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevicePointClippingProperties(const VkPhysicalDevicePointClippingProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -17985,7 +16233,7 @@ static void print_VkPhysicalDevicePointClippingProperties(const VkPhysicalDevice
          _OUT << "}" << std::endl;
 }
 
-static void print_VkInputAttachmentAspectReference(VkInputAttachmentAspectReference obj, const std::string& s, bool commaNeeded) {
+static void print_VkInputAttachmentAspectReference(VkInputAttachmentAspectReference obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18003,7 +16251,7 @@ static void print_VkInputAttachmentAspectReference(VkInputAttachmentAspectRefere
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkInputAttachmentAspectReference(const VkInputAttachmentAspectReference * obj, const std::string& s, bool commaNeeded) {
+static void print_VkInputAttachmentAspectReference(const VkInputAttachmentAspectReference * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18022,7 +16270,7 @@ static void print_VkInputAttachmentAspectReference(const VkInputAttachmentAspect
          _OUT << "}" << std::endl;
 }
 
-static void print_VkRenderPassInputAttachmentAspectCreateInfo(VkRenderPassInputAttachmentAspectCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassInputAttachmentAspectCreateInfo(VkRenderPassInputAttachmentAspectCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18064,7 +16312,7 @@ static void print_VkRenderPassInputAttachmentAspectCreateInfo(VkRenderPassInputA
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkRenderPassInputAttachmentAspectCreateInfo(const VkRenderPassInputAttachmentAspectCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassInputAttachmentAspectCreateInfo(const VkRenderPassInputAttachmentAspectCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18107,7 +16355,7 @@ static void print_VkRenderPassInputAttachmentAspectCreateInfo(const VkRenderPass
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageViewUsageCreateInfo(VkImageViewUsageCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageViewUsageCreateInfo(VkImageViewUsageCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18130,7 +16378,7 @@ static void print_VkImageViewUsageCreateInfo(VkImageViewUsageCreateInfo obj, con
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageViewUsageCreateInfo(const VkImageViewUsageCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageViewUsageCreateInfo(const VkImageViewUsageCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18154,7 +16402,7 @@ static void print_VkImageViewUsageCreateInfo(const VkImageViewUsageCreateInfo *
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineTessellationDomainOriginStateCreateInfo(VkPipelineTessellationDomainOriginStateCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineTessellationDomainOriginStateCreateInfo(VkPipelineTessellationDomainOriginStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18177,7 +16425,7 @@ static void print_VkPipelineTessellationDomainOriginStateCreateInfo(VkPipelineTe
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineTessellationDomainOriginStateCreateInfo(const VkPipelineTessellationDomainOriginStateCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineTessellationDomainOriginStateCreateInfo(const VkPipelineTessellationDomainOriginStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18201,7 +16449,7 @@ static void print_VkPipelineTessellationDomainOriginStateCreateInfo(const VkPipe
          _OUT << "}" << std::endl;
 }
 
-static void print_VkRenderPassMultiviewCreateInfo(VkRenderPassMultiviewCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassMultiviewCreateInfo(VkRenderPassMultiviewCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18223,8 +16471,6 @@ static void print_VkRenderPassMultiviewCreateInfo(VkRenderPassMultiviewCreateInf
      if (obj.pViewMasks) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.subpassCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pViewMasks" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.subpassCount;
            print_uint32_t(obj.pViewMasks[i], "", isCommaNeeded);
        }
@@ -18242,8 +16488,6 @@ static void print_VkRenderPassMultiviewCreateInfo(VkRenderPassMultiviewCreateInf
      if (obj.pViewOffsets) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.dependencyCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pViewOffsets" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.dependencyCount;
            print_int32_t(obj.pViewOffsets[i], "", isCommaNeeded);
        }
@@ -18261,8 +16505,6 @@ static void print_VkRenderPassMultiviewCreateInfo(VkRenderPassMultiviewCreateInf
      if (obj.pCorrelationMasks) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.correlationMaskCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pCorrelationMasks" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.correlationMaskCount;
            print_uint32_t(obj.pCorrelationMasks[i], "", isCommaNeeded);
        }
@@ -18279,7 +16521,7 @@ static void print_VkRenderPassMultiviewCreateInfo(VkRenderPassMultiviewCreateInf
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkRenderPassMultiviewCreateInfo(const VkRenderPassMultiviewCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassMultiviewCreateInfo(const VkRenderPassMultiviewCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18301,8 +16543,6 @@ static void print_VkRenderPassMultiviewCreateInfo(const VkRenderPassMultiviewCre
      if (obj->pViewMasks) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->subpassCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pViewMasks" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->subpassCount;
            print_uint32_t(obj->pViewMasks[i], "", isCommaNeeded);
        }
@@ -18320,8 +16560,6 @@ static void print_VkRenderPassMultiviewCreateInfo(const VkRenderPassMultiviewCre
      if (obj->pViewOffsets) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->dependencyCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pViewOffsets" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->dependencyCount;
            print_int32_t(obj->pViewOffsets[i], "", isCommaNeeded);
        }
@@ -18339,8 +16577,6 @@ static void print_VkRenderPassMultiviewCreateInfo(const VkRenderPassMultiviewCre
      if (obj->pCorrelationMasks) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->correlationMaskCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pCorrelationMasks" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->correlationMaskCount;
            print_uint32_t(obj->pCorrelationMasks[i], "", isCommaNeeded);
        }
@@ -18358,7 +16594,7 @@ static void print_VkRenderPassMultiviewCreateInfo(const VkRenderPassMultiviewCre
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceMultiviewFeatures(VkPhysicalDeviceMultiviewFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceMultiviewFeatures(VkPhysicalDeviceMultiviewFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18385,7 +16621,7 @@ static void print_VkPhysicalDeviceMultiviewFeatures(VkPhysicalDeviceMultiviewFea
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceMultiviewFeatures(const VkPhysicalDeviceMultiviewFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceMultiviewFeatures(const VkPhysicalDeviceMultiviewFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18413,7 +16649,7 @@ static void print_VkPhysicalDeviceMultiviewFeatures(const VkPhysicalDeviceMultiv
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceMultiviewProperties(VkPhysicalDeviceMultiviewProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceMultiviewProperties(VkPhysicalDeviceMultiviewProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18438,7 +16674,7 @@ static void print_VkPhysicalDeviceMultiviewProperties(VkPhysicalDeviceMultiviewP
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceMultiviewProperties(const VkPhysicalDeviceMultiviewProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceMultiviewProperties(const VkPhysicalDeviceMultiviewProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18464,7 +16700,7 @@ static void print_VkPhysicalDeviceMultiviewProperties(const VkPhysicalDeviceMult
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceVariablePointersFeatures(VkPhysicalDeviceVariablePointersFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVariablePointersFeatures(VkPhysicalDeviceVariablePointersFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18489,7 +16725,7 @@ static void print_VkPhysicalDeviceVariablePointersFeatures(VkPhysicalDeviceVaria
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceVariablePointersFeatures(const VkPhysicalDeviceVariablePointersFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVariablePointersFeatures(const VkPhysicalDeviceVariablePointersFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18517,7 +16753,7 @@ static void print_VkPhysicalDeviceVariablePointersFeatures(const VkPhysicalDevic
 
 typedef VkPhysicalDeviceVariablePointersFeatures VkPhysicalDeviceVariablePointerFeatures;
 
-static void print_VkPhysicalDeviceProtectedMemoryFeatures(VkPhysicalDeviceProtectedMemoryFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceProtectedMemoryFeatures(VkPhysicalDeviceProtectedMemoryFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18540,7 +16776,7 @@ static void print_VkPhysicalDeviceProtectedMemoryFeatures(VkPhysicalDeviceProtec
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceProtectedMemoryFeatures(const VkPhysicalDeviceProtectedMemoryFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceProtectedMemoryFeatures(const VkPhysicalDeviceProtectedMemoryFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18564,7 +16800,7 @@ static void print_VkPhysicalDeviceProtectedMemoryFeatures(const VkPhysicalDevice
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceProtectedMemoryProperties(VkPhysicalDeviceProtectedMemoryProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceProtectedMemoryProperties(VkPhysicalDeviceProtectedMemoryProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18587,7 +16823,7 @@ static void print_VkPhysicalDeviceProtectedMemoryProperties(VkPhysicalDeviceProt
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceProtectedMemoryProperties(const VkPhysicalDeviceProtectedMemoryProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceProtectedMemoryProperties(const VkPhysicalDeviceProtectedMemoryProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18611,7 +16847,7 @@ static void print_VkPhysicalDeviceProtectedMemoryProperties(const VkPhysicalDevi
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDeviceQueueInfo2(VkDeviceQueueInfo2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceQueueInfo2(VkDeviceQueueInfo2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18638,7 +16874,7 @@ static void print_VkDeviceQueueInfo2(VkDeviceQueueInfo2 obj, const std::string&
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceQueueInfo2(const VkDeviceQueueInfo2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceQueueInfo2(const VkDeviceQueueInfo2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18666,7 +16902,7 @@ static void print_VkDeviceQueueInfo2(const VkDeviceQueueInfo2 * obj, const std::
          _OUT << "}" << std::endl;
 }
 
-static void print_VkProtectedSubmitInfo(VkProtectedSubmitInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkProtectedSubmitInfo(VkProtectedSubmitInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18689,7 +16925,7 @@ static void print_VkProtectedSubmitInfo(VkProtectedSubmitInfo obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkProtectedSubmitInfo(const VkProtectedSubmitInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkProtectedSubmitInfo(const VkProtectedSubmitInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18713,7 +16949,7 @@ static void print_VkProtectedSubmitInfo(const VkProtectedSubmitInfo * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSamplerYcbcrConversionCreateInfo(VkSamplerYcbcrConversionCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkSamplerYcbcrConversionCreateInfo(VkSamplerYcbcrConversionCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18754,7 +16990,7 @@ static void print_VkSamplerYcbcrConversionCreateInfo(VkSamplerYcbcrConversionCre
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSamplerYcbcrConversionCreateInfo(const VkSamplerYcbcrConversionCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSamplerYcbcrConversionCreateInfo(const VkSamplerYcbcrConversionCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18796,7 +17032,7 @@ static void print_VkSamplerYcbcrConversionCreateInfo(const VkSamplerYcbcrConvers
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSamplerYcbcrConversionInfo(VkSamplerYcbcrConversionInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkSamplerYcbcrConversionInfo(VkSamplerYcbcrConversionInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18820,7 +17056,7 @@ static void print_VkSamplerYcbcrConversionInfo(VkSamplerYcbcrConversionInfo obj,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSamplerYcbcrConversionInfo(const VkSamplerYcbcrConversionInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSamplerYcbcrConversionInfo(const VkSamplerYcbcrConversionInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18845,7 +17081,7 @@ static void print_VkSamplerYcbcrConversionInfo(const VkSamplerYcbcrConversionInf
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBindImagePlaneMemoryInfo(VkBindImagePlaneMemoryInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkBindImagePlaneMemoryInfo(VkBindImagePlaneMemoryInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18868,7 +17104,7 @@ static void print_VkBindImagePlaneMemoryInfo(VkBindImagePlaneMemoryInfo obj, con
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBindImagePlaneMemoryInfo(const VkBindImagePlaneMemoryInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBindImagePlaneMemoryInfo(const VkBindImagePlaneMemoryInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18892,7 +17128,7 @@ static void print_VkBindImagePlaneMemoryInfo(const VkBindImagePlaneMemoryInfo *
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImagePlaneMemoryRequirementsInfo(VkImagePlaneMemoryRequirementsInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkImagePlaneMemoryRequirementsInfo(VkImagePlaneMemoryRequirementsInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18915,7 +17151,7 @@ static void print_VkImagePlaneMemoryRequirementsInfo(VkImagePlaneMemoryRequireme
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImagePlaneMemoryRequirementsInfo(const VkImagePlaneMemoryRequirementsInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImagePlaneMemoryRequirementsInfo(const VkImagePlaneMemoryRequirementsInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18939,7 +17175,7 @@ static void print_VkImagePlaneMemoryRequirementsInfo(const VkImagePlaneMemoryReq
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceSamplerYcbcrConversionFeatures(VkPhysicalDeviceSamplerYcbcrConversionFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSamplerYcbcrConversionFeatures(VkPhysicalDeviceSamplerYcbcrConversionFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18962,7 +17198,7 @@ static void print_VkPhysicalDeviceSamplerYcbcrConversionFeatures(VkPhysicalDevic
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceSamplerYcbcrConversionFeatures(const VkPhysicalDeviceSamplerYcbcrConversionFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSamplerYcbcrConversionFeatures(const VkPhysicalDeviceSamplerYcbcrConversionFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -18986,7 +17222,7 @@ static void print_VkPhysicalDeviceSamplerYcbcrConversionFeatures(const VkPhysica
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSamplerYcbcrConversionImageFormatProperties(VkSamplerYcbcrConversionImageFormatProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkSamplerYcbcrConversionImageFormatProperties(VkSamplerYcbcrConversionImageFormatProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19009,7 +17245,7 @@ static void print_VkSamplerYcbcrConversionImageFormatProperties(VkSamplerYcbcrCo
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSamplerYcbcrConversionImageFormatProperties(const VkSamplerYcbcrConversionImageFormatProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSamplerYcbcrConversionImageFormatProperties(const VkSamplerYcbcrConversionImageFormatProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19033,7 +17269,7 @@ static void print_VkSamplerYcbcrConversionImageFormatProperties(const VkSamplerY
          _OUT << "}" << std::endl;
 }
 
-static void print_VkExternalMemoryProperties(VkExternalMemoryProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalMemoryProperties(VkExternalMemoryProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19051,7 +17287,7 @@ static void print_VkExternalMemoryProperties(VkExternalMemoryProperties obj, con
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkExternalMemoryProperties(const VkExternalMemoryProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalMemoryProperties(const VkExternalMemoryProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19070,7 +17306,7 @@ static void print_VkExternalMemoryProperties(const VkExternalMemoryProperties *
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceExternalImageFormatInfo(VkPhysicalDeviceExternalImageFormatInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExternalImageFormatInfo(VkPhysicalDeviceExternalImageFormatInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19093,7 +17329,7 @@ static void print_VkPhysicalDeviceExternalImageFormatInfo(VkPhysicalDeviceExtern
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceExternalImageFormatInfo(const VkPhysicalDeviceExternalImageFormatInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExternalImageFormatInfo(const VkPhysicalDeviceExternalImageFormatInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19117,7 +17353,7 @@ static void print_VkPhysicalDeviceExternalImageFormatInfo(const VkPhysicalDevice
          _OUT << "}" << std::endl;
 }
 
-static void print_VkExternalImageFormatProperties(VkExternalImageFormatProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalImageFormatProperties(VkExternalImageFormatProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19144,7 +17380,7 @@ static void print_VkExternalImageFormatProperties(VkExternalImageFormatPropertie
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkExternalImageFormatProperties(const VkExternalImageFormatProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalImageFormatProperties(const VkExternalImageFormatProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19172,7 +17408,7 @@ static void print_VkExternalImageFormatProperties(const VkExternalImageFormatPro
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceExternalBufferInfo(VkPhysicalDeviceExternalBufferInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExternalBufferInfo(VkPhysicalDeviceExternalBufferInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19199,7 +17435,7 @@ static void print_VkPhysicalDeviceExternalBufferInfo(VkPhysicalDeviceExternalBuf
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceExternalBufferInfo(const VkPhysicalDeviceExternalBufferInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExternalBufferInfo(const VkPhysicalDeviceExternalBufferInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19227,7 +17463,7 @@ static void print_VkPhysicalDeviceExternalBufferInfo(const VkPhysicalDeviceExter
          _OUT << "}" << std::endl;
 }
 
-static void print_VkExternalBufferProperties(VkExternalBufferProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalBufferProperties(VkExternalBufferProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19254,7 +17490,7 @@ static void print_VkExternalBufferProperties(VkExternalBufferProperties obj, con
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkExternalBufferProperties(const VkExternalBufferProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalBufferProperties(const VkExternalBufferProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19282,7 +17518,7 @@ static void print_VkExternalBufferProperties(const VkExternalBufferProperties *
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceIDProperties(VkPhysicalDeviceIDProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceIDProperties(VkPhysicalDeviceIDProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19302,8 +17538,6 @@ static void print_VkPhysicalDeviceIDProperties(VkPhysicalDeviceIDProperties obj,
      if (obj.deviceUUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "deviceUUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj.deviceUUID[i], "", isCommaNeeded);
        }
@@ -19319,8 +17553,6 @@ static void print_VkPhysicalDeviceIDProperties(VkPhysicalDeviceIDProperties obj,
      if (obj.driverUUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "driverUUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj.driverUUID[i], "", isCommaNeeded);
        }
@@ -19336,8 +17568,6 @@ static void print_VkPhysicalDeviceIDProperties(VkPhysicalDeviceIDProperties obj,
      if (obj.deviceLUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_LUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "deviceLUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_LUID_SIZE;
            print_uint8_t(obj.deviceLUID[i], "", isCommaNeeded);
        }
@@ -19358,7 +17588,7 @@ static void print_VkPhysicalDeviceIDProperties(VkPhysicalDeviceIDProperties obj,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceIDProperties(const VkPhysicalDeviceIDProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceIDProperties(const VkPhysicalDeviceIDProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19378,8 +17608,6 @@ static void print_VkPhysicalDeviceIDProperties(const VkPhysicalDeviceIDPropertie
      if (obj->deviceUUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "deviceUUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj->deviceUUID[i], "", isCommaNeeded);
        }
@@ -19395,8 +17623,6 @@ static void print_VkPhysicalDeviceIDProperties(const VkPhysicalDeviceIDPropertie
      if (obj->driverUUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "driverUUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj->driverUUID[i], "", isCommaNeeded);
        }
@@ -19412,8 +17638,6 @@ static void print_VkPhysicalDeviceIDProperties(const VkPhysicalDeviceIDPropertie
      if (obj->deviceLUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_LUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "deviceLUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_LUID_SIZE;
            print_uint8_t(obj->deviceLUID[i], "", isCommaNeeded);
        }
@@ -19435,7 +17659,7 @@ static void print_VkPhysicalDeviceIDProperties(const VkPhysicalDeviceIDPropertie
          _OUT << "}" << std::endl;
 }
 
-static void print_VkExternalMemoryImageCreateInfo(VkExternalMemoryImageCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalMemoryImageCreateInfo(VkExternalMemoryImageCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19458,7 +17682,7 @@ static void print_VkExternalMemoryImageCreateInfo(VkExternalMemoryImageCreateInf
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkExternalMemoryImageCreateInfo(const VkExternalMemoryImageCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalMemoryImageCreateInfo(const VkExternalMemoryImageCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19482,7 +17706,7 @@ static void print_VkExternalMemoryImageCreateInfo(const VkExternalMemoryImageCre
          _OUT << "}" << std::endl;
 }
 
-static void print_VkExternalMemoryBufferCreateInfo(VkExternalMemoryBufferCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalMemoryBufferCreateInfo(VkExternalMemoryBufferCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19505,7 +17729,7 @@ static void print_VkExternalMemoryBufferCreateInfo(VkExternalMemoryBufferCreateI
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkExternalMemoryBufferCreateInfo(const VkExternalMemoryBufferCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalMemoryBufferCreateInfo(const VkExternalMemoryBufferCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19529,7 +17753,7 @@ static void print_VkExternalMemoryBufferCreateInfo(const VkExternalMemoryBufferC
          _OUT << "}" << std::endl;
 }
 
-static void print_VkExportMemoryAllocateInfo(VkExportMemoryAllocateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkExportMemoryAllocateInfo(VkExportMemoryAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19552,7 +17776,7 @@ static void print_VkExportMemoryAllocateInfo(VkExportMemoryAllocateInfo obj, con
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkExportMemoryAllocateInfo(const VkExportMemoryAllocateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkExportMemoryAllocateInfo(const VkExportMemoryAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19576,7 +17800,7 @@ static void print_VkExportMemoryAllocateInfo(const VkExportMemoryAllocateInfo *
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceExternalFenceInfo(VkPhysicalDeviceExternalFenceInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExternalFenceInfo(VkPhysicalDeviceExternalFenceInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19599,7 +17823,7 @@ static void print_VkPhysicalDeviceExternalFenceInfo(VkPhysicalDeviceExternalFenc
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceExternalFenceInfo(const VkPhysicalDeviceExternalFenceInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExternalFenceInfo(const VkPhysicalDeviceExternalFenceInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19623,7 +17847,7 @@ static void print_VkPhysicalDeviceExternalFenceInfo(const VkPhysicalDeviceExtern
          _OUT << "}" << std::endl;
 }
 
-static void print_VkExternalFenceProperties(VkExternalFenceProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalFenceProperties(VkExternalFenceProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19650,7 +17874,7 @@ static void print_VkExternalFenceProperties(VkExternalFenceProperties obj, const
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkExternalFenceProperties(const VkExternalFenceProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalFenceProperties(const VkExternalFenceProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19678,7 +17902,7 @@ static void print_VkExternalFenceProperties(const VkExternalFenceProperties * ob
          _OUT << "}" << std::endl;
 }
 
-static void print_VkExportFenceCreateInfo(VkExportFenceCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkExportFenceCreateInfo(VkExportFenceCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19701,7 +17925,7 @@ static void print_VkExportFenceCreateInfo(VkExportFenceCreateInfo obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkExportFenceCreateInfo(const VkExportFenceCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkExportFenceCreateInfo(const VkExportFenceCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19725,7 +17949,7 @@ static void print_VkExportFenceCreateInfo(const VkExportFenceCreateInfo * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkExportSemaphoreCreateInfo(VkExportSemaphoreCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkExportSemaphoreCreateInfo(VkExportSemaphoreCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19748,7 +17972,7 @@ static void print_VkExportSemaphoreCreateInfo(VkExportSemaphoreCreateInfo obj, c
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkExportSemaphoreCreateInfo(const VkExportSemaphoreCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkExportSemaphoreCreateInfo(const VkExportSemaphoreCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19772,7 +17996,7 @@ static void print_VkExportSemaphoreCreateInfo(const VkExportSemaphoreCreateInfo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceExternalSemaphoreInfo(VkPhysicalDeviceExternalSemaphoreInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExternalSemaphoreInfo(VkPhysicalDeviceExternalSemaphoreInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19795,7 +18019,7 @@ static void print_VkPhysicalDeviceExternalSemaphoreInfo(VkPhysicalDeviceExternal
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceExternalSemaphoreInfo(const VkPhysicalDeviceExternalSemaphoreInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExternalSemaphoreInfo(const VkPhysicalDeviceExternalSemaphoreInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19819,7 +18043,7 @@ static void print_VkPhysicalDeviceExternalSemaphoreInfo(const VkPhysicalDeviceEx
          _OUT << "}" << std::endl;
 }
 
-static void print_VkExternalSemaphoreProperties(VkExternalSemaphoreProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalSemaphoreProperties(VkExternalSemaphoreProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19846,7 +18070,7 @@ static void print_VkExternalSemaphoreProperties(VkExternalSemaphoreProperties ob
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkExternalSemaphoreProperties(const VkExternalSemaphoreProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkExternalSemaphoreProperties(const VkExternalSemaphoreProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19874,7 +18098,7 @@ static void print_VkExternalSemaphoreProperties(const VkExternalSemaphorePropert
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceMaintenance3Properties(VkPhysicalDeviceMaintenance3Properties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceMaintenance3Properties(VkPhysicalDeviceMaintenance3Properties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19899,7 +18123,7 @@ static void print_VkPhysicalDeviceMaintenance3Properties(VkPhysicalDeviceMainten
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceMaintenance3Properties(const VkPhysicalDeviceMaintenance3Properties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceMaintenance3Properties(const VkPhysicalDeviceMaintenance3Properties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19925,7 +18149,7 @@ static void print_VkPhysicalDeviceMaintenance3Properties(const VkPhysicalDeviceM
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDescriptorSetLayoutSupport(VkDescriptorSetLayoutSupport obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetLayoutSupport(VkDescriptorSetLayoutSupport obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19948,7 +18172,7 @@ static void print_VkDescriptorSetLayoutSupport(VkDescriptorSetLayoutSupport obj,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDescriptorSetLayoutSupport(const VkDescriptorSetLayoutSupport * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetLayoutSupport(const VkDescriptorSetLayoutSupport * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19972,7 +18196,7 @@ static void print_VkDescriptorSetLayoutSupport(const VkDescriptorSetLayoutSuppor
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceShaderDrawParametersFeatures(VkPhysicalDeviceShaderDrawParametersFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderDrawParametersFeatures(VkPhysicalDeviceShaderDrawParametersFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -19995,7 +18219,7 @@ static void print_VkPhysicalDeviceShaderDrawParametersFeatures(VkPhysicalDeviceS
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceShaderDrawParametersFeatures(const VkPhysicalDeviceShaderDrawParametersFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderDrawParametersFeatures(const VkPhysicalDeviceShaderDrawParametersFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -20042,8 +18266,9 @@ static std::map<deUint64, std::string> VkDriverId_map = {
     std::make_pair(18, "VK_DRIVER_ID_MESA_TURNIP"),
     std::make_pair(19, "VK_DRIVER_ID_MESA_V3DV"),
     std::make_pair(20, "VK_DRIVER_ID_MESA_PANVK"),
+    std::make_pair(21, "VK_DRIVER_ID_SAMSUNG_PROPRIETARY"),
 };
-static void print_VkDriverId(VkDriverId obj, const std::string& str, bool commaNeeded) {
+static void print_VkDriverId(VkDriverId obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20051,7 +18276,7 @@ static void print_VkDriverId(VkDriverId obj, const std::string& str, bool commaN
      else
          _OUT << "\"" << VkDriverId_map[obj] << "\"" << std::endl;
 }
-static void print_VkDriverId(const VkDriverId * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDriverId(const VkDriverId * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20065,7 +18290,7 @@ static std::map<deUint64, std::string> VkShaderFloatControlsIndependence_map = {
     std::make_pair(1, "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL"),
     std::make_pair(2, "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE"),
 };
-static void print_VkShaderFloatControlsIndependence(VkShaderFloatControlsIndependence obj, const std::string& str, bool commaNeeded) {
+static void print_VkShaderFloatControlsIndependence(VkShaderFloatControlsIndependence obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20073,7 +18298,7 @@ static void print_VkShaderFloatControlsIndependence(VkShaderFloatControlsIndepen
      else
          _OUT << "\"" << VkShaderFloatControlsIndependence_map[obj] << "\"" << std::endl;
 }
-static void print_VkShaderFloatControlsIndependence(const VkShaderFloatControlsIndependence * obj, const std::string& str, bool commaNeeded) {
+static void print_VkShaderFloatControlsIndependence(const VkShaderFloatControlsIndependence * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20089,7 +18314,7 @@ static std::map<deUint64, std::string> VkResolveModeFlagBits_map = {
     std::make_pair(1ULL << 2, "VK_RESOLVE_MODE_MIN_BIT"),
     std::make_pair(1ULL << 3, "VK_RESOLVE_MODE_MAX_BIT"),
 };
-static void print_VkResolveModeFlagBits(VkResolveModeFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkResolveModeFlagBits(VkResolveModeFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20097,7 +18322,7 @@ static void print_VkResolveModeFlagBits(VkResolveModeFlagBits obj, const std::st
      else
          _OUT << "\"" << VkResolveModeFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkResolveModeFlagBits(const VkResolveModeFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkResolveModeFlagBits(const VkResolveModeFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20113,7 +18338,7 @@ static std::map<deUint64, std::string> VkDescriptorBindingFlagBits_map = {
     std::make_pair(1ULL << 3, "VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT"),
     std::make_pair(1ULL << 4, "VK_DESCRIPTOR_BINDING_RESERVED_4_BIT_QCOM"),
 };
-static void print_VkDescriptorBindingFlagBits(VkDescriptorBindingFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorBindingFlagBits(VkDescriptorBindingFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20121,7 +18346,7 @@ static void print_VkDescriptorBindingFlagBits(VkDescriptorBindingFlagBits obj, c
      else
          _OUT << "\"" << VkDescriptorBindingFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkDescriptorBindingFlagBits(const VkDescriptorBindingFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorBindingFlagBits(const VkDescriptorBindingFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20135,7 +18360,7 @@ static std::map<deUint64, std::string> VkSamplerReductionMode_map = {
     std::make_pair(1, "VK_SAMPLER_REDUCTION_MODE_MIN"),
     std::make_pair(2, "VK_SAMPLER_REDUCTION_MODE_MAX"),
 };
-static void print_VkSamplerReductionMode(VkSamplerReductionMode obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerReductionMode(VkSamplerReductionMode obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20143,7 +18368,7 @@ static void print_VkSamplerReductionMode(VkSamplerReductionMode obj, const std::
      else
          _OUT << "\"" << VkSamplerReductionMode_map[obj] << "\"" << std::endl;
 }
-static void print_VkSamplerReductionMode(const VkSamplerReductionMode * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSamplerReductionMode(const VkSamplerReductionMode * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20156,7 +18381,7 @@ static std::map<deUint64, std::string> VkSemaphoreType_map = {
     std::make_pair(0, "VK_SEMAPHORE_TYPE_BINARY"),
     std::make_pair(1, "VK_SEMAPHORE_TYPE_TIMELINE"),
 };
-static void print_VkSemaphoreType(VkSemaphoreType obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphoreType(VkSemaphoreType obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20164,7 +18389,7 @@ static void print_VkSemaphoreType(VkSemaphoreType obj, const std::string& str, b
      else
          _OUT << "\"" << VkSemaphoreType_map[obj] << "\"" << std::endl;
 }
-static void print_VkSemaphoreType(const VkSemaphoreType * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphoreType(const VkSemaphoreType * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20176,7 +18401,7 @@ static void print_VkSemaphoreType(const VkSemaphoreType * obj, const std::string
 static std::map<deUint64, std::string> VkSemaphoreWaitFlagBits_map = {
     std::make_pair(1ULL << 0, "VK_SEMAPHORE_WAIT_ANY_BIT"),
 };
-static void print_VkSemaphoreWaitFlagBits(VkSemaphoreWaitFlagBits obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphoreWaitFlagBits(VkSemaphoreWaitFlagBits obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20184,7 +18409,7 @@ static void print_VkSemaphoreWaitFlagBits(VkSemaphoreWaitFlagBits obj, const std
      else
          _OUT << "\"" << VkSemaphoreWaitFlagBits_map[obj] << "\"" << std::endl;
 }
-static void print_VkSemaphoreWaitFlagBits(const VkSemaphoreWaitFlagBits * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphoreWaitFlagBits(const VkSemaphoreWaitFlagBits * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -20193,7 +18418,7 @@ static void print_VkSemaphoreWaitFlagBits(const VkSemaphoreWaitFlagBits * obj, c
          _OUT << "\"" << VkSemaphoreWaitFlagBits_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkResolveModeFlags(VkResolveModeFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkResolveModeFlags(VkResolveModeFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -20215,7 +18440,7 @@ static void print_VkResolveModeFlags(VkResolveModeFlags obj, const std::string&
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkResolveModeFlags(const VkResolveModeFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkResolveModeFlags(const VkResolveModeFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -20238,7 +18463,7 @@ static void print_VkResolveModeFlags(const VkResolveModeFlags * obj, const std::
      _OUT << std::endl;
 }
 
-static void print_VkDescriptorBindingFlags(VkDescriptorBindingFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorBindingFlags(VkDescriptorBindingFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -20260,7 +18485,7 @@ static void print_VkDescriptorBindingFlags(VkDescriptorBindingFlags obj, const s
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkDescriptorBindingFlags(const VkDescriptorBindingFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDescriptorBindingFlags(const VkDescriptorBindingFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -20283,7 +18508,7 @@ static void print_VkDescriptorBindingFlags(const VkDescriptorBindingFlags * obj,
      _OUT << std::endl;
 }
 
-static void print_VkSemaphoreWaitFlags(VkSemaphoreWaitFlags obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphoreWaitFlags(VkSemaphoreWaitFlags obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -20305,7 +18530,7 @@ static void print_VkSemaphoreWaitFlags(VkSemaphoreWaitFlags obj, const std::stri
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkSemaphoreWaitFlags(const VkSemaphoreWaitFlags * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSemaphoreWaitFlags(const VkSemaphoreWaitFlags * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -20328,7 +18553,7 @@ static void print_VkSemaphoreWaitFlags(const VkSemaphoreWaitFlags * obj, const s
      _OUT << std::endl;
 }
 
-static void print_VkPhysicalDeviceVulkan11Features(VkPhysicalDeviceVulkan11Features obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkan11Features(VkPhysicalDeviceVulkan11Features obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -20373,7 +18598,7 @@ static void print_VkPhysicalDeviceVulkan11Features(VkPhysicalDeviceVulkan11Featu
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceVulkan11Features(const VkPhysicalDeviceVulkan11Features * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkan11Features(const VkPhysicalDeviceVulkan11Features * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -20419,7 +18644,7 @@ static void print_VkPhysicalDeviceVulkan11Features(const VkPhysicalDeviceVulkan1
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceVulkan11Properties(VkPhysicalDeviceVulkan11Properties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkan11Properties(VkPhysicalDeviceVulkan11Properties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -20439,8 +18664,6 @@ static void print_VkPhysicalDeviceVulkan11Properties(VkPhysicalDeviceVulkan11Pro
      if (obj.deviceUUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "deviceUUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj.deviceUUID[i], "", isCommaNeeded);
        }
@@ -20456,8 +18679,6 @@ static void print_VkPhysicalDeviceVulkan11Properties(VkPhysicalDeviceVulkan11Pro
      if (obj.driverUUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "driverUUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj.driverUUID[i], "", isCommaNeeded);
        }
@@ -20473,8 +18694,6 @@ static void print_VkPhysicalDeviceVulkan11Properties(VkPhysicalDeviceVulkan11Pro
      if (obj.deviceLUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_LUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "deviceLUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_LUID_SIZE;
            print_uint8_t(obj.deviceLUID[i], "", isCommaNeeded);
        }
@@ -20515,7 +18734,7 @@ static void print_VkPhysicalDeviceVulkan11Properties(VkPhysicalDeviceVulkan11Pro
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceVulkan11Properties(const VkPhysicalDeviceVulkan11Properties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkan11Properties(const VkPhysicalDeviceVulkan11Properties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -20535,8 +18754,6 @@ static void print_VkPhysicalDeviceVulkan11Properties(const VkPhysicalDeviceVulka
      if (obj->deviceUUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "deviceUUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj->deviceUUID[i], "", isCommaNeeded);
        }
@@ -20552,8 +18769,6 @@ static void print_VkPhysicalDeviceVulkan11Properties(const VkPhysicalDeviceVulka
      if (obj->driverUUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "driverUUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj->driverUUID[i], "", isCommaNeeded);
        }
@@ -20569,8 +18784,6 @@ static void print_VkPhysicalDeviceVulkan11Properties(const VkPhysicalDeviceVulka
      if (obj->deviceLUID) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_LUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "deviceLUID" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_LUID_SIZE;
            print_uint8_t(obj->deviceLUID[i], "", isCommaNeeded);
        }
@@ -20612,7 +18825,7 @@ static void print_VkPhysicalDeviceVulkan11Properties(const VkPhysicalDeviceVulka
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceVulkan12Features(VkPhysicalDeviceVulkan12Features obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkan12Features(VkPhysicalDeviceVulkan12Features obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -20727,7 +18940,7 @@ static void print_VkPhysicalDeviceVulkan12Features(VkPhysicalDeviceVulkan12Featu
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceVulkan12Features(const VkPhysicalDeviceVulkan12Features * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkan12Features(const VkPhysicalDeviceVulkan12Features * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -20843,7 +19056,7 @@ static void print_VkPhysicalDeviceVulkan12Features(const VkPhysicalDeviceVulkan1
          _OUT << "}" << std::endl;
 }
 
-static void print_VkConformanceVersion(VkConformanceVersion obj, const std::string& s, bool commaNeeded) {
+static void print_VkConformanceVersion(VkConformanceVersion obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -20863,7 +19076,7 @@ static void print_VkConformanceVersion(VkConformanceVersion obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkConformanceVersion(const VkConformanceVersion * obj, const std::string& s, bool commaNeeded) {
+static void print_VkConformanceVersion(const VkConformanceVersion * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -20884,7 +19097,7 @@ static void print_VkConformanceVersion(const VkConformanceVersion * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceVulkan12Properties(VkPhysicalDeviceVulkan12Properties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkan12Properties(VkPhysicalDeviceVulkan12Properties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -20906,8 +19119,6 @@ static void print_VkPhysicalDeviceVulkan12Properties(VkPhysicalDeviceVulkan12Pro
      if (obj.driverName) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DRIVER_NAME_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "driverName" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_NAME_SIZE;
            print_char(obj.driverName[i], "", isCommaNeeded);
        }
@@ -20923,8 +19134,6 @@ static void print_VkPhysicalDeviceVulkan12Properties(VkPhysicalDeviceVulkan12Pro
      if (obj.driverInfo) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DRIVER_INFO_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "driverInfo" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_INFO_SIZE;
            print_char(obj.driverInfo[i], "", isCommaNeeded);
        }
@@ -21043,7 +19252,7 @@ static void print_VkPhysicalDeviceVulkan12Properties(VkPhysicalDeviceVulkan12Pro
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceVulkan12Properties(const VkPhysicalDeviceVulkan12Properties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkan12Properties(const VkPhysicalDeviceVulkan12Properties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21065,8 +19274,6 @@ static void print_VkPhysicalDeviceVulkan12Properties(const VkPhysicalDeviceVulka
      if (obj->driverName) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DRIVER_NAME_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "driverName" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_NAME_SIZE;
            print_char(obj->driverName[i], "", isCommaNeeded);
        }
@@ -21082,8 +19289,6 @@ static void print_VkPhysicalDeviceVulkan12Properties(const VkPhysicalDeviceVulka
      if (obj->driverInfo) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DRIVER_INFO_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "driverInfo" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_INFO_SIZE;
            print_char(obj->driverInfo[i], "", isCommaNeeded);
        }
@@ -21203,7 +19408,7 @@ static void print_VkPhysicalDeviceVulkan12Properties(const VkPhysicalDeviceVulka
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageFormatListCreateInfo(VkImageFormatListCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageFormatListCreateInfo(VkImageFormatListCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21225,8 +19430,6 @@ static void print_VkImageFormatListCreateInfo(VkImageFormatListCreateInfo obj, c
      if (obj.pViewFormats) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.viewFormatCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pViewFormats" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.viewFormatCount;
            print_VkFormat(obj.pViewFormats[i], "", isCommaNeeded);
        }
@@ -21243,7 +19446,7 @@ static void print_VkImageFormatListCreateInfo(VkImageFormatListCreateInfo obj, c
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageFormatListCreateInfo(const VkImageFormatListCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageFormatListCreateInfo(const VkImageFormatListCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21265,8 +19468,6 @@ static void print_VkImageFormatListCreateInfo(const VkImageFormatListCreateInfo
      if (obj->pViewFormats) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->viewFormatCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pViewFormats" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->viewFormatCount;
            print_VkFormat(obj->pViewFormats[i], "", isCommaNeeded);
        }
@@ -21284,7 +19485,7 @@ static void print_VkImageFormatListCreateInfo(const VkImageFormatListCreateInfo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkAttachmentDescription2(VkAttachmentDescription2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentDescription2(VkAttachmentDescription2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21323,7 +19524,7 @@ static void print_VkAttachmentDescription2(VkAttachmentDescription2 obj, const s
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkAttachmentDescription2(const VkAttachmentDescription2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentDescription2(const VkAttachmentDescription2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21363,7 +19564,7 @@ static void print_VkAttachmentDescription2(const VkAttachmentDescription2 * obj,
          _OUT << "}" << std::endl;
 }
 
-static void print_VkAttachmentReference2(VkAttachmentReference2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentReference2(VkAttachmentReference2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21390,7 +19591,7 @@ static void print_VkAttachmentReference2(VkAttachmentReference2 obj, const std::
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkAttachmentReference2(const VkAttachmentReference2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentReference2(const VkAttachmentReference2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21418,7 +19619,7 @@ static void print_VkAttachmentReference2(const VkAttachmentReference2 * obj, con
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSubpassDescription2(VkSubpassDescription2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassDescription2(VkSubpassDescription2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21517,8 +19718,6 @@ static void print_VkSubpassDescription2(VkSubpassDescription2 obj, const std::st
      if (obj.pPreserveAttachments) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.preserveAttachmentCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pPreserveAttachments" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.preserveAttachmentCount;
            print_uint32_t(obj.pPreserveAttachments[i], "", isCommaNeeded);
        }
@@ -21535,7 +19734,7 @@ static void print_VkSubpassDescription2(VkSubpassDescription2 obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSubpassDescription2(const VkSubpassDescription2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassDescription2(const VkSubpassDescription2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21634,8 +19833,6 @@ static void print_VkSubpassDescription2(const VkSubpassDescription2 * obj, const
      if (obj->pPreserveAttachments) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->preserveAttachmentCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pPreserveAttachments" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->preserveAttachmentCount;
            print_uint32_t(obj->pPreserveAttachments[i], "", isCommaNeeded);
        }
@@ -21653,7 +19850,7 @@ static void print_VkSubpassDescription2(const VkSubpassDescription2 * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSubpassDependency2(VkSubpassDependency2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassDependency2(VkSubpassDependency2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21690,7 +19887,7 @@ static void print_VkSubpassDependency2(VkSubpassDependency2 obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSubpassDependency2(const VkSubpassDependency2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassDependency2(const VkSubpassDependency2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21728,7 +19925,7 @@ static void print_VkSubpassDependency2(const VkSubpassDependency2 * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkRenderPassCreateInfo2(VkRenderPassCreateInfo2 obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassCreateInfo2(VkRenderPassCreateInfo2 obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21815,8 +20012,6 @@ static void print_VkRenderPassCreateInfo2(VkRenderPassCreateInfo2 obj, const std
      if (obj.pCorrelatedViewMasks) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.correlatedViewMaskCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pCorrelatedViewMasks" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.correlatedViewMaskCount;
            print_uint32_t(obj.pCorrelatedViewMasks[i], "", isCommaNeeded);
        }
@@ -21833,7 +20028,7 @@ static void print_VkRenderPassCreateInfo2(VkRenderPassCreateInfo2 obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkRenderPassCreateInfo2(const VkRenderPassCreateInfo2 * obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassCreateInfo2(const VkRenderPassCreateInfo2 * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21920,8 +20115,6 @@ static void print_VkRenderPassCreateInfo2(const VkRenderPassCreateInfo2 * obj, c
      if (obj->pCorrelatedViewMasks) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->correlatedViewMaskCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pCorrelatedViewMasks" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->correlatedViewMaskCount;
            print_uint32_t(obj->pCorrelatedViewMasks[i], "", isCommaNeeded);
        }
@@ -21939,7 +20132,7 @@ static void print_VkRenderPassCreateInfo2(const VkRenderPassCreateInfo2 * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSubpassBeginInfo(VkSubpassBeginInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassBeginInfo(VkSubpassBeginInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21962,7 +20155,7 @@ static void print_VkSubpassBeginInfo(VkSubpassBeginInfo obj, const std::string&
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSubpassBeginInfo(const VkSubpassBeginInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassBeginInfo(const VkSubpassBeginInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -21986,7 +20179,7 @@ static void print_VkSubpassBeginInfo(const VkSubpassBeginInfo * obj, const std::
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSubpassEndInfo(VkSubpassEndInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassEndInfo(VkSubpassEndInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22007,7 +20200,7 @@ static void print_VkSubpassEndInfo(VkSubpassEndInfo obj, const std::string& s, b
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSubpassEndInfo(const VkSubpassEndInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassEndInfo(const VkSubpassEndInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22029,7 +20222,7 @@ static void print_VkSubpassEndInfo(const VkSubpassEndInfo * obj, const std::stri
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDevice8BitStorageFeatures(VkPhysicalDevice8BitStorageFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevice8BitStorageFeatures(VkPhysicalDevice8BitStorageFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22056,7 +20249,7 @@ static void print_VkPhysicalDevice8BitStorageFeatures(VkPhysicalDevice8BitStorag
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDevice8BitStorageFeatures(const VkPhysicalDevice8BitStorageFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevice8BitStorageFeatures(const VkPhysicalDevice8BitStorageFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22084,7 +20277,7 @@ static void print_VkPhysicalDevice8BitStorageFeatures(const VkPhysicalDevice8Bit
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceDriverProperties(VkPhysicalDeviceDriverProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceDriverProperties(VkPhysicalDeviceDriverProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22106,8 +20299,6 @@ static void print_VkPhysicalDeviceDriverProperties(VkPhysicalDeviceDriverPropert
      if (obj.driverName) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DRIVER_NAME_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "driverName" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_NAME_SIZE;
            print_char(obj.driverName[i], "", isCommaNeeded);
        }
@@ -22123,8 +20314,6 @@ static void print_VkPhysicalDeviceDriverProperties(VkPhysicalDeviceDriverPropert
      if (obj.driverInfo) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DRIVER_INFO_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "driverInfo" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_INFO_SIZE;
            print_char(obj.driverInfo[i], "", isCommaNeeded);
        }
@@ -22147,7 +20336,7 @@ static void print_VkPhysicalDeviceDriverProperties(VkPhysicalDeviceDriverPropert
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceDriverProperties(const VkPhysicalDeviceDriverProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceDriverProperties(const VkPhysicalDeviceDriverProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22169,8 +20358,6 @@ static void print_VkPhysicalDeviceDriverProperties(const VkPhysicalDeviceDriverP
      if (obj->driverName) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DRIVER_NAME_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "driverName" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_NAME_SIZE;
            print_char(obj->driverName[i], "", isCommaNeeded);
        }
@@ -22186,8 +20373,6 @@ static void print_VkPhysicalDeviceDriverProperties(const VkPhysicalDeviceDriverP
      if (obj->driverInfo) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DRIVER_INFO_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "driverInfo" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_INFO_SIZE;
            print_char(obj->driverInfo[i], "", isCommaNeeded);
        }
@@ -22211,7 +20396,7 @@ static void print_VkPhysicalDeviceDriverProperties(const VkPhysicalDeviceDriverP
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceShaderAtomicInt64Features(VkPhysicalDeviceShaderAtomicInt64Features obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderAtomicInt64Features(VkPhysicalDeviceShaderAtomicInt64Features obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22236,7 +20421,7 @@ static void print_VkPhysicalDeviceShaderAtomicInt64Features(VkPhysicalDeviceShad
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceShaderAtomicInt64Features(const VkPhysicalDeviceShaderAtomicInt64Features * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderAtomicInt64Features(const VkPhysicalDeviceShaderAtomicInt64Features * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22262,7 +20447,7 @@ static void print_VkPhysicalDeviceShaderAtomicInt64Features(const VkPhysicalDevi
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceShaderFloat16Int8Features(VkPhysicalDeviceShaderFloat16Int8Features obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderFloat16Int8Features(VkPhysicalDeviceShaderFloat16Int8Features obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22287,7 +20472,7 @@ static void print_VkPhysicalDeviceShaderFloat16Int8Features(VkPhysicalDeviceShad
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceShaderFloat16Int8Features(const VkPhysicalDeviceShaderFloat16Int8Features * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderFloat16Int8Features(const VkPhysicalDeviceShaderFloat16Int8Features * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22313,7 +20498,7 @@ static void print_VkPhysicalDeviceShaderFloat16Int8Features(const VkPhysicalDevi
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceFloatControlsProperties(VkPhysicalDeviceFloatControlsProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFloatControlsProperties(VkPhysicalDeviceFloatControlsProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22368,7 +20553,7 @@ static void print_VkPhysicalDeviceFloatControlsProperties(VkPhysicalDeviceFloatC
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceFloatControlsProperties(const VkPhysicalDeviceFloatControlsProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFloatControlsProperties(const VkPhysicalDeviceFloatControlsProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22424,7 +20609,7 @@ static void print_VkPhysicalDeviceFloatControlsProperties(const VkPhysicalDevice
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDescriptorSetLayoutBindingFlagsCreateInfo(VkDescriptorSetLayoutBindingFlagsCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetLayoutBindingFlagsCreateInfo(VkDescriptorSetLayoutBindingFlagsCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22446,8 +20631,6 @@ static void print_VkDescriptorSetLayoutBindingFlagsCreateInfo(VkDescriptorSetLay
      if (obj.pBindingFlags) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.bindingCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pBindingFlags" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.bindingCount;
            print_VkDescriptorBindingFlags(obj.pBindingFlags[i], "", isCommaNeeded);
        }
@@ -22464,7 +20647,7 @@ static void print_VkDescriptorSetLayoutBindingFlagsCreateInfo(VkDescriptorSetLay
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDescriptorSetLayoutBindingFlagsCreateInfo(const VkDescriptorSetLayoutBindingFlagsCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetLayoutBindingFlagsCreateInfo(const VkDescriptorSetLayoutBindingFlagsCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22486,8 +20669,6 @@ static void print_VkDescriptorSetLayoutBindingFlagsCreateInfo(const VkDescriptor
      if (obj->pBindingFlags) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->bindingCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pBindingFlags" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->bindingCount;
            print_VkDescriptorBindingFlags(obj->pBindingFlags[i], "", isCommaNeeded);
        }
@@ -22505,7 +20686,7 @@ static void print_VkDescriptorSetLayoutBindingFlagsCreateInfo(const VkDescriptor
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceDescriptorIndexingFeatures(VkPhysicalDeviceDescriptorIndexingFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceDescriptorIndexingFeatures(VkPhysicalDeviceDescriptorIndexingFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22566,7 +20747,7 @@ static void print_VkPhysicalDeviceDescriptorIndexingFeatures(VkPhysicalDeviceDes
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceDescriptorIndexingFeatures(const VkPhysicalDeviceDescriptorIndexingFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceDescriptorIndexingFeatures(const VkPhysicalDeviceDescriptorIndexingFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22628,7 +20809,7 @@ static void print_VkPhysicalDeviceDescriptorIndexingFeatures(const VkPhysicalDev
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceDescriptorIndexingProperties(VkPhysicalDeviceDescriptorIndexingProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceDescriptorIndexingProperties(VkPhysicalDeviceDescriptorIndexingProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22695,7 +20876,7 @@ static void print_VkPhysicalDeviceDescriptorIndexingProperties(VkPhysicalDeviceD
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceDescriptorIndexingProperties(const VkPhysicalDeviceDescriptorIndexingProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceDescriptorIndexingProperties(const VkPhysicalDeviceDescriptorIndexingProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22763,7 +20944,7 @@ static void print_VkPhysicalDeviceDescriptorIndexingProperties(const VkPhysicalD
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDescriptorSetVariableDescriptorCountAllocateInfo(VkDescriptorSetVariableDescriptorCountAllocateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetVariableDescriptorCountAllocateInfo(VkDescriptorSetVariableDescriptorCountAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22785,8 +20966,6 @@ static void print_VkDescriptorSetVariableDescriptorCountAllocateInfo(VkDescripto
      if (obj.pDescriptorCounts) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.descriptorSetCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDescriptorCounts" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.descriptorSetCount;
            print_uint32_t(obj.pDescriptorCounts[i], "", isCommaNeeded);
        }
@@ -22803,7 +20982,7 @@ static void print_VkDescriptorSetVariableDescriptorCountAllocateInfo(VkDescripto
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDescriptorSetVariableDescriptorCountAllocateInfo(const VkDescriptorSetVariableDescriptorCountAllocateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetVariableDescriptorCountAllocateInfo(const VkDescriptorSetVariableDescriptorCountAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22825,8 +21004,6 @@ static void print_VkDescriptorSetVariableDescriptorCountAllocateInfo(const VkDes
      if (obj->pDescriptorCounts) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->descriptorSetCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDescriptorCounts" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->descriptorSetCount;
            print_uint32_t(obj->pDescriptorCounts[i], "", isCommaNeeded);
        }
@@ -22844,7 +21021,7 @@ static void print_VkDescriptorSetVariableDescriptorCountAllocateInfo(const VkDes
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDescriptorSetVariableDescriptorCountLayoutSupport(VkDescriptorSetVariableDescriptorCountLayoutSupport obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetVariableDescriptorCountLayoutSupport(VkDescriptorSetVariableDescriptorCountLayoutSupport obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22867,7 +21044,7 @@ static void print_VkDescriptorSetVariableDescriptorCountLayoutSupport(VkDescript
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDescriptorSetVariableDescriptorCountLayoutSupport(const VkDescriptorSetVariableDescriptorCountLayoutSupport * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDescriptorSetVariableDescriptorCountLayoutSupport(const VkDescriptorSetVariableDescriptorCountLayoutSupport * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22891,7 +21068,7 @@ static void print_VkDescriptorSetVariableDescriptorCountLayoutSupport(const VkDe
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSubpassDescriptionDepthStencilResolve(VkSubpassDescriptionDepthStencilResolve obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassDescriptionDepthStencilResolve(VkSubpassDescriptionDepthStencilResolve obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22926,7 +21103,7 @@ static void print_VkSubpassDescriptionDepthStencilResolve(VkSubpassDescriptionDe
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSubpassDescriptionDepthStencilResolve(const VkSubpassDescriptionDepthStencilResolve * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassDescriptionDepthStencilResolve(const VkSubpassDescriptionDepthStencilResolve * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22962,7 +21139,7 @@ static void print_VkSubpassDescriptionDepthStencilResolve(const VkSubpassDescrip
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceDepthStencilResolveProperties(VkPhysicalDeviceDepthStencilResolveProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceDepthStencilResolveProperties(VkPhysicalDeviceDepthStencilResolveProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -22991,7 +21168,7 @@ static void print_VkPhysicalDeviceDepthStencilResolveProperties(VkPhysicalDevice
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceDepthStencilResolveProperties(const VkPhysicalDeviceDepthStencilResolveProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceDepthStencilResolveProperties(const VkPhysicalDeviceDepthStencilResolveProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23021,7 +21198,7 @@ static void print_VkPhysicalDeviceDepthStencilResolveProperties(const VkPhysical
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceScalarBlockLayoutFeatures(VkPhysicalDeviceScalarBlockLayoutFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceScalarBlockLayoutFeatures(VkPhysicalDeviceScalarBlockLayoutFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23044,7 +21221,7 @@ static void print_VkPhysicalDeviceScalarBlockLayoutFeatures(VkPhysicalDeviceScal
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceScalarBlockLayoutFeatures(const VkPhysicalDeviceScalarBlockLayoutFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceScalarBlockLayoutFeatures(const VkPhysicalDeviceScalarBlockLayoutFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23068,7 +21245,7 @@ static void print_VkPhysicalDeviceScalarBlockLayoutFeatures(const VkPhysicalDevi
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageStencilUsageCreateInfo(VkImageStencilUsageCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageStencilUsageCreateInfo(VkImageStencilUsageCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23091,7 +21268,7 @@ static void print_VkImageStencilUsageCreateInfo(VkImageStencilUsageCreateInfo ob
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageStencilUsageCreateInfo(const VkImageStencilUsageCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageStencilUsageCreateInfo(const VkImageStencilUsageCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23115,7 +21292,7 @@ static void print_VkImageStencilUsageCreateInfo(const VkImageStencilUsageCreateI
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSamplerReductionModeCreateInfo(VkSamplerReductionModeCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkSamplerReductionModeCreateInfo(VkSamplerReductionModeCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23138,7 +21315,7 @@ static void print_VkSamplerReductionModeCreateInfo(VkSamplerReductionModeCreateI
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSamplerReductionModeCreateInfo(const VkSamplerReductionModeCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSamplerReductionModeCreateInfo(const VkSamplerReductionModeCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23162,7 +21339,7 @@ static void print_VkSamplerReductionModeCreateInfo(const VkSamplerReductionModeC
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceSamplerFilterMinmaxProperties(VkPhysicalDeviceSamplerFilterMinmaxProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSamplerFilterMinmaxProperties(VkPhysicalDeviceSamplerFilterMinmaxProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23187,7 +21364,7 @@ static void print_VkPhysicalDeviceSamplerFilterMinmaxProperties(VkPhysicalDevice
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceSamplerFilterMinmaxProperties(const VkPhysicalDeviceSamplerFilterMinmaxProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSamplerFilterMinmaxProperties(const VkPhysicalDeviceSamplerFilterMinmaxProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23213,7 +21390,7 @@ static void print_VkPhysicalDeviceSamplerFilterMinmaxProperties(const VkPhysical
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceVulkanMemoryModelFeatures(VkPhysicalDeviceVulkanMemoryModelFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkanMemoryModelFeatures(VkPhysicalDeviceVulkanMemoryModelFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23240,7 +21417,7 @@ static void print_VkPhysicalDeviceVulkanMemoryModelFeatures(VkPhysicalDeviceVulk
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceVulkanMemoryModelFeatures(const VkPhysicalDeviceVulkanMemoryModelFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkanMemoryModelFeatures(const VkPhysicalDeviceVulkanMemoryModelFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23268,7 +21445,7 @@ static void print_VkPhysicalDeviceVulkanMemoryModelFeatures(const VkPhysicalDevi
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceImagelessFramebufferFeatures(VkPhysicalDeviceImagelessFramebufferFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceImagelessFramebufferFeatures(VkPhysicalDeviceImagelessFramebufferFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23291,7 +21468,7 @@ static void print_VkPhysicalDeviceImagelessFramebufferFeatures(VkPhysicalDeviceI
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceImagelessFramebufferFeatures(const VkPhysicalDeviceImagelessFramebufferFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceImagelessFramebufferFeatures(const VkPhysicalDeviceImagelessFramebufferFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23315,7 +21492,7 @@ static void print_VkPhysicalDeviceImagelessFramebufferFeatures(const VkPhysicalD
          _OUT << "}" << std::endl;
 }
 
-static void print_VkFramebufferAttachmentImageInfo(VkFramebufferAttachmentImageInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkFramebufferAttachmentImageInfo(VkFramebufferAttachmentImageInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23347,8 +21524,6 @@ static void print_VkFramebufferAttachmentImageInfo(VkFramebufferAttachmentImageI
      if (obj.pViewFormats) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.viewFormatCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pViewFormats" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.viewFormatCount;
            print_VkFormat(obj.pViewFormats[i], "", isCommaNeeded);
        }
@@ -23365,7 +21540,7 @@ static void print_VkFramebufferAttachmentImageInfo(VkFramebufferAttachmentImageI
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkFramebufferAttachmentImageInfo(const VkFramebufferAttachmentImageInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkFramebufferAttachmentImageInfo(const VkFramebufferAttachmentImageInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23397,8 +21572,6 @@ static void print_VkFramebufferAttachmentImageInfo(const VkFramebufferAttachment
      if (obj->pViewFormats) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->viewFormatCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pViewFormats" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->viewFormatCount;
            print_VkFormat(obj->pViewFormats[i], "", isCommaNeeded);
        }
@@ -23416,7 +21589,7 @@ static void print_VkFramebufferAttachmentImageInfo(const VkFramebufferAttachment
          _OUT << "}" << std::endl;
 }
 
-static void print_VkFramebufferAttachmentsCreateInfo(VkFramebufferAttachmentsCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkFramebufferAttachmentsCreateInfo(VkFramebufferAttachmentsCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23458,7 +21631,7 @@ static void print_VkFramebufferAttachmentsCreateInfo(VkFramebufferAttachmentsCre
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkFramebufferAttachmentsCreateInfo(const VkFramebufferAttachmentsCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkFramebufferAttachmentsCreateInfo(const VkFramebufferAttachmentsCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23501,7 +21674,7 @@ static void print_VkFramebufferAttachmentsCreateInfo(const VkFramebufferAttachme
          _OUT << "}" << std::endl;
 }
 
-static void print_VkRenderPassAttachmentBeginInfo(VkRenderPassAttachmentBeginInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassAttachmentBeginInfo(VkRenderPassAttachmentBeginInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23541,7 +21714,7 @@ static void print_VkRenderPassAttachmentBeginInfo(VkRenderPassAttachmentBeginInf
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkRenderPassAttachmentBeginInfo(const VkRenderPassAttachmentBeginInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassAttachmentBeginInfo(const VkRenderPassAttachmentBeginInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23582,7 +21755,7 @@ static void print_VkRenderPassAttachmentBeginInfo(const VkRenderPassAttachmentBe
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(VkPhysicalDeviceUniformBufferStandardLayoutFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(VkPhysicalDeviceUniformBufferStandardLayoutFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23605,7 +21778,7 @@ static void print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(VkPhysical
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(const VkPhysicalDeviceUniformBufferStandardLayoutFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(const VkPhysicalDeviceUniformBufferStandardLayoutFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23629,7 +21802,7 @@ static void print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(const VkPh
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23652,7 +21825,7 @@ static void print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(VkPhysical
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23676,7 +21849,7 @@ static void print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(const VkPh
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23699,7 +21872,7 @@ static void print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(VkPhysical
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23723,7 +21896,7 @@ static void print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(const VkPh
          _OUT << "}" << std::endl;
 }
 
-static void print_VkAttachmentReferenceStencilLayout(VkAttachmentReferenceStencilLayout obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentReferenceStencilLayout(VkAttachmentReferenceStencilLayout obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23746,7 +21919,7 @@ static void print_VkAttachmentReferenceStencilLayout(VkAttachmentReferenceStenci
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkAttachmentReferenceStencilLayout(const VkAttachmentReferenceStencilLayout * obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentReferenceStencilLayout(const VkAttachmentReferenceStencilLayout * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23770,7 +21943,7 @@ static void print_VkAttachmentReferenceStencilLayout(const VkAttachmentReference
          _OUT << "}" << std::endl;
 }
 
-static void print_VkAttachmentDescriptionStencilLayout(VkAttachmentDescriptionStencilLayout obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentDescriptionStencilLayout(VkAttachmentDescriptionStencilLayout obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23795,7 +21968,7 @@ static void print_VkAttachmentDescriptionStencilLayout(VkAttachmentDescriptionSt
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkAttachmentDescriptionStencilLayout(const VkAttachmentDescriptionStencilLayout * obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentDescriptionStencilLayout(const VkAttachmentDescriptionStencilLayout * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23821,7 +21994,7 @@ static void print_VkAttachmentDescriptionStencilLayout(const VkAttachmentDescrip
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceHostQueryResetFeatures(VkPhysicalDeviceHostQueryResetFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceHostQueryResetFeatures(VkPhysicalDeviceHostQueryResetFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23844,7 +22017,7 @@ static void print_VkPhysicalDeviceHostQueryResetFeatures(VkPhysicalDeviceHostQue
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceHostQueryResetFeatures(const VkPhysicalDeviceHostQueryResetFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceHostQueryResetFeatures(const VkPhysicalDeviceHostQueryResetFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23868,7 +22041,7 @@ static void print_VkPhysicalDeviceHostQueryResetFeatures(const VkPhysicalDeviceH
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceTimelineSemaphoreFeatures(VkPhysicalDeviceTimelineSemaphoreFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceTimelineSemaphoreFeatures(VkPhysicalDeviceTimelineSemaphoreFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23891,7 +22064,7 @@ static void print_VkPhysicalDeviceTimelineSemaphoreFeatures(VkPhysicalDeviceTime
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceTimelineSemaphoreFeatures(const VkPhysicalDeviceTimelineSemaphoreFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceTimelineSemaphoreFeatures(const VkPhysicalDeviceTimelineSemaphoreFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23915,7 +22088,7 @@ static void print_VkPhysicalDeviceTimelineSemaphoreFeatures(const VkPhysicalDevi
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceTimelineSemaphoreProperties(VkPhysicalDeviceTimelineSemaphoreProperties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceTimelineSemaphoreProperties(VkPhysicalDeviceTimelineSemaphoreProperties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23938,7 +22111,7 @@ static void print_VkPhysicalDeviceTimelineSemaphoreProperties(VkPhysicalDeviceTi
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceTimelineSemaphoreProperties(const VkPhysicalDeviceTimelineSemaphoreProperties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceTimelineSemaphoreProperties(const VkPhysicalDeviceTimelineSemaphoreProperties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23962,7 +22135,7 @@ static void print_VkPhysicalDeviceTimelineSemaphoreProperties(const VkPhysicalDe
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSemaphoreTypeCreateInfo(VkSemaphoreTypeCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkSemaphoreTypeCreateInfo(VkSemaphoreTypeCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -23987,7 +22160,7 @@ static void print_VkSemaphoreTypeCreateInfo(VkSemaphoreTypeCreateInfo obj, const
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSemaphoreTypeCreateInfo(const VkSemaphoreTypeCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSemaphoreTypeCreateInfo(const VkSemaphoreTypeCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24013,7 +22186,7 @@ static void print_VkSemaphoreTypeCreateInfo(const VkSemaphoreTypeCreateInfo * ob
          _OUT << "}" << std::endl;
 }
 
-static void print_VkTimelineSemaphoreSubmitInfo(VkTimelineSemaphoreSubmitInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkTimelineSemaphoreSubmitInfo(VkTimelineSemaphoreSubmitInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24035,8 +22208,6 @@ static void print_VkTimelineSemaphoreSubmitInfo(VkTimelineSemaphoreSubmitInfo ob
      if (obj.pWaitSemaphoreValues) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.waitSemaphoreValueCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pWaitSemaphoreValues" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.waitSemaphoreValueCount;
            print_uint64_t(obj.pWaitSemaphoreValues[i], "", isCommaNeeded);
        }
@@ -24054,8 +22225,6 @@ static void print_VkTimelineSemaphoreSubmitInfo(VkTimelineSemaphoreSubmitInfo ob
      if (obj.pSignalSemaphoreValues) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.signalSemaphoreValueCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pSignalSemaphoreValues" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.signalSemaphoreValueCount;
            print_uint64_t(obj.pSignalSemaphoreValues[i], "", isCommaNeeded);
        }
@@ -24072,7 +22241,7 @@ static void print_VkTimelineSemaphoreSubmitInfo(VkTimelineSemaphoreSubmitInfo ob
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkTimelineSemaphoreSubmitInfo(const VkTimelineSemaphoreSubmitInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkTimelineSemaphoreSubmitInfo(const VkTimelineSemaphoreSubmitInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24094,8 +22263,6 @@ static void print_VkTimelineSemaphoreSubmitInfo(const VkTimelineSemaphoreSubmitI
      if (obj->pWaitSemaphoreValues) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->waitSemaphoreValueCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pWaitSemaphoreValues" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->waitSemaphoreValueCount;
            print_uint64_t(obj->pWaitSemaphoreValues[i], "", isCommaNeeded);
        }
@@ -24113,8 +22280,6 @@ static void print_VkTimelineSemaphoreSubmitInfo(const VkTimelineSemaphoreSubmitI
      if (obj->pSignalSemaphoreValues) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->signalSemaphoreValueCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pSignalSemaphoreValues" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->signalSemaphoreValueCount;
            print_uint64_t(obj->pSignalSemaphoreValues[i], "", isCommaNeeded);
        }
@@ -24132,7 +22297,7 @@ static void print_VkTimelineSemaphoreSubmitInfo(const VkTimelineSemaphoreSubmitI
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSemaphoreWaitInfo(VkSemaphoreWaitInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkSemaphoreWaitInfo(VkSemaphoreWaitInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24173,8 +22338,6 @@ static void print_VkSemaphoreWaitInfo(VkSemaphoreWaitInfo obj, const std::string
      if (obj.pValues) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.semaphoreCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pValues" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.semaphoreCount;
            print_uint64_t(obj.pValues[i], "", isCommaNeeded);
        }
@@ -24191,7 +22354,7 @@ static void print_VkSemaphoreWaitInfo(VkSemaphoreWaitInfo obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSemaphoreWaitInfo(const VkSemaphoreWaitInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSemaphoreWaitInfo(const VkSemaphoreWaitInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24232,8 +22395,6 @@ static void print_VkSemaphoreWaitInfo(const VkSemaphoreWaitInfo * obj, const std
      if (obj->pValues) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->semaphoreCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pValues" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->semaphoreCount;
            print_uint64_t(obj->pValues[i], "", isCommaNeeded);
        }
@@ -24251,7 +22412,7 @@ static void print_VkSemaphoreWaitInfo(const VkSemaphoreWaitInfo * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSemaphoreSignalInfo(VkSemaphoreSignalInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkSemaphoreSignalInfo(VkSemaphoreSignalInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24277,7 +22438,7 @@ static void print_VkSemaphoreSignalInfo(VkSemaphoreSignalInfo obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSemaphoreSignalInfo(const VkSemaphoreSignalInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSemaphoreSignalInfo(const VkSemaphoreSignalInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24304,7 +22465,7 @@ static void print_VkSemaphoreSignalInfo(const VkSemaphoreSignalInfo * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceBufferDeviceAddressFeatures(VkPhysicalDeviceBufferDeviceAddressFeatures obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceBufferDeviceAddressFeatures(VkPhysicalDeviceBufferDeviceAddressFeatures obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24331,7 +22492,7 @@ static void print_VkPhysicalDeviceBufferDeviceAddressFeatures(VkPhysicalDeviceBu
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceBufferDeviceAddressFeatures(const VkPhysicalDeviceBufferDeviceAddressFeatures * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceBufferDeviceAddressFeatures(const VkPhysicalDeviceBufferDeviceAddressFeatures * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24359,7 +22520,7 @@ static void print_VkPhysicalDeviceBufferDeviceAddressFeatures(const VkPhysicalDe
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBufferDeviceAddressInfo(VkBufferDeviceAddressInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferDeviceAddressInfo(VkBufferDeviceAddressInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24383,7 +22544,7 @@ static void print_VkBufferDeviceAddressInfo(VkBufferDeviceAddressInfo obj, const
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBufferDeviceAddressInfo(const VkBufferDeviceAddressInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferDeviceAddressInfo(const VkBufferDeviceAddressInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24408,7 +22569,7 @@ static void print_VkBufferDeviceAddressInfo(const VkBufferDeviceAddressInfo * ob
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBufferOpaqueCaptureAddressCreateInfo(VkBufferOpaqueCaptureAddressCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferOpaqueCaptureAddressCreateInfo(VkBufferOpaqueCaptureAddressCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24431,7 +22592,7 @@ static void print_VkBufferOpaqueCaptureAddressCreateInfo(VkBufferOpaqueCaptureAd
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBufferOpaqueCaptureAddressCreateInfo(const VkBufferOpaqueCaptureAddressCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferOpaqueCaptureAddressCreateInfo(const VkBufferOpaqueCaptureAddressCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24455,7 +22616,7 @@ static void print_VkBufferOpaqueCaptureAddressCreateInfo(const VkBufferOpaqueCap
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMemoryOpaqueCaptureAddressAllocateInfo(VkMemoryOpaqueCaptureAddressAllocateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryOpaqueCaptureAddressAllocateInfo(VkMemoryOpaqueCaptureAddressAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24478,7 +22639,7 @@ static void print_VkMemoryOpaqueCaptureAddressAllocateInfo(VkMemoryOpaqueCapture
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryOpaqueCaptureAddressAllocateInfo(const VkMemoryOpaqueCaptureAddressAllocateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryOpaqueCaptureAddressAllocateInfo(const VkMemoryOpaqueCaptureAddressAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24502,7 +22663,7 @@ static void print_VkMemoryOpaqueCaptureAddressAllocateInfo(const VkMemoryOpaqueC
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDeviceMemoryOpaqueCaptureAddressInfo(VkDeviceMemoryOpaqueCaptureAddressInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceMemoryOpaqueCaptureAddressInfo(VkDeviceMemoryOpaqueCaptureAddressInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24526,7 +22687,7 @@ static void print_VkDeviceMemoryOpaqueCaptureAddressInfo(VkDeviceMemoryOpaqueCap
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceMemoryOpaqueCaptureAddressInfo(const VkDeviceMemoryOpaqueCaptureAddressInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceMemoryOpaqueCaptureAddressInfo(const VkDeviceMemoryOpaqueCaptureAddressInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24557,7 +22718,7 @@ static std::map<deUint64, std::string> VkFaultLevel_map = {
     std::make_pair(2, "VK_FAULT_LEVEL_RECOVERABLE"),
     std::make_pair(3, "VK_FAULT_LEVEL_WARNING"),
 };
-static void print_VkFaultLevel(VkFaultLevel obj, const std::string& str, bool commaNeeded) {
+static void print_VkFaultLevel(VkFaultLevel obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -24565,7 +22726,7 @@ static void print_VkFaultLevel(VkFaultLevel obj, const std::string& str, bool co
      else
          _OUT << "\"" << VkFaultLevel_map[obj] << "\"" << std::endl;
 }
-static void print_VkFaultLevel(const VkFaultLevel * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFaultLevel(const VkFaultLevel * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -24583,7 +22744,7 @@ static std::map<deUint64, std::string> VkFaultType_map = {
     std::make_pair(5, "VK_FAULT_TYPE_COMMAND_BUFFER_FULL"),
     std::make_pair(6, "VK_FAULT_TYPE_INVALID_API_USAGE"),
 };
-static void print_VkFaultType(VkFaultType obj, const std::string& str, bool commaNeeded) {
+static void print_VkFaultType(VkFaultType obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -24591,7 +22752,7 @@ static void print_VkFaultType(VkFaultType obj, const std::string& str, bool comm
      else
          _OUT << "\"" << VkFaultType_map[obj] << "\"" << std::endl;
 }
-static void print_VkFaultType(const VkFaultType * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFaultType(const VkFaultType * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -24603,7 +22764,7 @@ static void print_VkFaultType(const VkFaultType * obj, const std::string& str, b
 static std::map<deUint64, std::string> VkFaultQueryBehavior_map = {
     std::make_pair(0, "VK_FAULT_QUERY_BEHAVIOR_GET_AND_CLEAR_ALL_FAULTS"),
 };
-static void print_VkFaultQueryBehavior(VkFaultQueryBehavior obj, const std::string& str, bool commaNeeded) {
+static void print_VkFaultQueryBehavior(VkFaultQueryBehavior obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -24611,7 +22772,7 @@ static void print_VkFaultQueryBehavior(VkFaultQueryBehavior obj, const std::stri
      else
          _OUT << "\"" << VkFaultQueryBehavior_map[obj] << "\"" << std::endl;
 }
-static void print_VkFaultQueryBehavior(const VkFaultQueryBehavior * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFaultQueryBehavior(const VkFaultQueryBehavior * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -24623,7 +22784,7 @@ static void print_VkFaultQueryBehavior(const VkFaultQueryBehavior * obj, const s
 static std::map<deUint64, std::string> VkPipelineMatchControl_map = {
     std::make_pair(0, "VK_PIPELINE_MATCH_CONTROL_APPLICATION_UUID_EXACT_MATCH"),
 };
-static void print_VkPipelineMatchControl(VkPipelineMatchControl obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineMatchControl(VkPipelineMatchControl obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -24631,7 +22792,7 @@ static void print_VkPipelineMatchControl(VkPipelineMatchControl obj, const std::
      else
          _OUT << "\"" << VkPipelineMatchControl_map[obj] << "\"" << std::endl;
 }
-static void print_VkPipelineMatchControl(const VkPipelineMatchControl * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineMatchControl(const VkPipelineMatchControl * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -24643,7 +22804,7 @@ static void print_VkPipelineMatchControl(const VkPipelineMatchControl * obj, con
 static std::map<deUint64, std::string> VkPipelineCacheValidationVersion_map = {
     std::make_pair(1, "VK_PIPELINE_CACHE_VALIDATION_VERSION_SAFETY_CRITICAL_ONE"),
 };
-static void print_VkPipelineCacheValidationVersion(VkPipelineCacheValidationVersion obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCacheValidationVersion(VkPipelineCacheValidationVersion obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -24651,7 +22812,7 @@ static void print_VkPipelineCacheValidationVersion(VkPipelineCacheValidationVers
      else
          _OUT << "\"" << VkPipelineCacheValidationVersion_map[obj] << "\"" << std::endl;
 }
-static void print_VkPipelineCacheValidationVersion(const VkPipelineCacheValidationVersion * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineCacheValidationVersion(const VkPipelineCacheValidationVersion * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -24660,7 +22821,7 @@ static void print_VkPipelineCacheValidationVersion(const VkPipelineCacheValidati
          _OUT << "\"" << VkPipelineCacheValidationVersion_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkPhysicalDeviceVulkanSC10Features(VkPhysicalDeviceVulkanSC10Features obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkanSC10Features(VkPhysicalDeviceVulkanSC10Features obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24683,7 +22844,7 @@ static void print_VkPhysicalDeviceVulkanSC10Features(VkPhysicalDeviceVulkanSC10F
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceVulkanSC10Features(const VkPhysicalDeviceVulkanSC10Features * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkanSC10Features(const VkPhysicalDeviceVulkanSC10Features * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24707,7 +22868,7 @@ static void print_VkPhysicalDeviceVulkanSC10Features(const VkPhysicalDeviceVulka
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceVulkanSC10Properties(VkPhysicalDeviceVulkanSC10Properties obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkanSC10Properties(VkPhysicalDeviceVulkanSC10Properties obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24764,7 +22925,7 @@ static void print_VkPhysicalDeviceVulkanSC10Properties(VkPhysicalDeviceVulkanSC1
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceVulkanSC10Properties(const VkPhysicalDeviceVulkanSC10Properties * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVulkanSC10Properties(const VkPhysicalDeviceVulkanSC10Properties * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24822,7 +22983,7 @@ static void print_VkPhysicalDeviceVulkanSC10Properties(const VkPhysicalDeviceVul
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelinePoolSize(VkPipelinePoolSize obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelinePoolSize(VkPipelinePoolSize obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24847,7 +23008,7 @@ static void print_VkPipelinePoolSize(VkPipelinePoolSize obj, const std::string&
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelinePoolSize(const VkPipelinePoolSize * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelinePoolSize(const VkPipelinePoolSize * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -24873,7 +23034,7 @@ static void print_VkPipelinePoolSize(const VkPipelinePoolSize * obj, const std::
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDeviceObjectReservationCreateInfo(VkDeviceObjectReservationCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceObjectReservationCreateInfo(VkDeviceObjectReservationCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25010,7 +23171,7 @@ static void print_VkDeviceObjectReservationCreateInfo(VkDeviceObjectReservationC
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceObjectReservationCreateInfo(const VkDeviceObjectReservationCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceObjectReservationCreateInfo(const VkDeviceObjectReservationCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25148,7 +23309,7 @@ static void print_VkDeviceObjectReservationCreateInfo(const VkDeviceObjectReserv
          _OUT << "}" << std::endl;
 }
 
-static void print_VkCommandPoolMemoryReservationCreateInfo(VkCommandPoolMemoryReservationCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandPoolMemoryReservationCreateInfo(VkCommandPoolMemoryReservationCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25173,7 +23334,7 @@ static void print_VkCommandPoolMemoryReservationCreateInfo(VkCommandPoolMemoryRe
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCommandPoolMemoryReservationCreateInfo(const VkCommandPoolMemoryReservationCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandPoolMemoryReservationCreateInfo(const VkCommandPoolMemoryReservationCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25199,7 +23360,7 @@ static void print_VkCommandPoolMemoryReservationCreateInfo(const VkCommandPoolMe
          _OUT << "}" << std::endl;
 }
 
-static void print_VkCommandPoolMemoryConsumption(VkCommandPoolMemoryConsumption obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandPoolMemoryConsumption(VkCommandPoolMemoryConsumption obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25226,7 +23387,7 @@ static void print_VkCommandPoolMemoryConsumption(VkCommandPoolMemoryConsumption
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCommandPoolMemoryConsumption(const VkCommandPoolMemoryConsumption * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandPoolMemoryConsumption(const VkCommandPoolMemoryConsumption * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25254,7 +23415,7 @@ static void print_VkCommandPoolMemoryConsumption(const VkCommandPoolMemoryConsum
          _OUT << "}" << std::endl;
 }
 
-static void print_VkFaultData(VkFaultData obj, const std::string& s, bool commaNeeded) {
+static void print_VkFaultData(VkFaultData obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25279,7 +23440,7 @@ static void print_VkFaultData(VkFaultData obj, const std::string& s, bool commaN
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkFaultData(const VkFaultData * obj, const std::string& s, bool commaNeeded) {
+static void print_VkFaultData(const VkFaultData * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25305,7 +23466,7 @@ static void print_VkFaultData(const VkFaultData * obj, const std::string& s, boo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkFaultCallbackInfo(VkFaultCallbackInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkFaultCallbackInfo(VkFaultCallbackInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25349,7 +23510,7 @@ static void print_VkFaultCallbackInfo(VkFaultCallbackInfo obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkFaultCallbackInfo(const VkFaultCallbackInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkFaultCallbackInfo(const VkFaultCallbackInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25394,7 +23555,7 @@ static void print_VkFaultCallbackInfo(const VkFaultCallbackInfo * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineOfflineCreateInfo(VkPipelineOfflineCreateInfo obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineOfflineCreateInfo(VkPipelineOfflineCreateInfo obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25414,8 +23575,6 @@ static void print_VkPipelineOfflineCreateInfo(VkPipelineOfflineCreateInfo obj, c
      if (obj.pipelineIdentifier) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "pipelineIdentifier" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint32_t((deUint32)obj.pipelineIdentifier[i], "", isCommaNeeded);
        }
@@ -25436,7 +23595,7 @@ static void print_VkPipelineOfflineCreateInfo(VkPipelineOfflineCreateInfo obj, c
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineOfflineCreateInfo(const VkPipelineOfflineCreateInfo * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineOfflineCreateInfo(const VkPipelineOfflineCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25456,8 +23615,6 @@ static void print_VkPipelineOfflineCreateInfo(const VkPipelineOfflineCreateInfo
      if (obj->pipelineIdentifier) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "pipelineIdentifier" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint32_t((deUint32)obj->pipelineIdentifier[i], "", isCommaNeeded);
        }
@@ -25479,7 +23636,7 @@ static void print_VkPipelineOfflineCreateInfo(const VkPipelineOfflineCreateInfo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineCacheStageValidationIndexEntry(VkPipelineCacheStageValidationIndexEntry obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineCacheStageValidationIndexEntry(VkPipelineCacheStageValidationIndexEntry obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25495,7 +23652,7 @@ static void print_VkPipelineCacheStageValidationIndexEntry(VkPipelineCacheStageV
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineCacheStageValidationIndexEntry(const VkPipelineCacheStageValidationIndexEntry * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineCacheStageValidationIndexEntry(const VkPipelineCacheStageValidationIndexEntry * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25512,7 +23669,7 @@ static void print_VkPipelineCacheStageValidationIndexEntry(const VkPipelineCache
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineCacheSafetyCriticalIndexEntry(VkPipelineCacheSafetyCriticalIndexEntry obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineCacheSafetyCriticalIndexEntry(VkPipelineCacheSafetyCriticalIndexEntry obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25523,8 +23680,6 @@ static void print_VkPipelineCacheSafetyCriticalIndexEntry(VkPipelineCacheSafetyC
      if (obj.pipelineIdentifier) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "pipelineIdentifier" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint32_t((deUint32)obj.pipelineIdentifier[i], "", isCommaNeeded);
        }
@@ -25553,7 +23708,7 @@ static void print_VkPipelineCacheSafetyCriticalIndexEntry(VkPipelineCacheSafetyC
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineCacheSafetyCriticalIndexEntry(const VkPipelineCacheSafetyCriticalIndexEntry * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineCacheSafetyCriticalIndexEntry(const VkPipelineCacheSafetyCriticalIndexEntry * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25564,8 +23719,6 @@ static void print_VkPipelineCacheSafetyCriticalIndexEntry(const VkPipelineCacheS
      if (obj->pipelineIdentifier) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "pipelineIdentifier" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint32_t((deUint32)obj->pipelineIdentifier[i], "", isCommaNeeded);
        }
@@ -25595,7 +23748,7 @@ static void print_VkPipelineCacheSafetyCriticalIndexEntry(const VkPipelineCacheS
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineCacheHeaderVersionSafetyCriticalOne(VkPipelineCacheHeaderVersionSafetyCriticalOne obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineCacheHeaderVersionSafetyCriticalOne(VkPipelineCacheHeaderVersionSafetyCriticalOne obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25623,7 +23776,7 @@ static void print_VkPipelineCacheHeaderVersionSafetyCriticalOne(VkPipelineCacheH
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineCacheHeaderVersionSafetyCriticalOne(const VkPipelineCacheHeaderVersionSafetyCriticalOne * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineCacheHeaderVersionSafetyCriticalOne(const VkPipelineCacheHeaderVersionSafetyCriticalOne * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25652,14 +23805,14 @@ static void print_VkPipelineCacheHeaderVersionSafetyCriticalOne(const VkPipeline
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSurfaceKHR(VkSurfaceKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkSurfaceKHR(VkSurfaceKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkSurfaceKHR(const VkSurfaceKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSurfaceKHR(const VkSurfaceKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -25678,7 +23831,7 @@ static std::map<deUint64, std::string> VkSurfaceTransformFlagBitsKHR_map = {
     std::make_pair(1ULL << 7, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR"),
     std::make_pair(1ULL << 8, "VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR"),
 };
-static void print_VkSurfaceTransformFlagBitsKHR(VkSurfaceTransformFlagBitsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkSurfaceTransformFlagBitsKHR(VkSurfaceTransformFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -25686,7 +23839,7 @@ static void print_VkSurfaceTransformFlagBitsKHR(VkSurfaceTransformFlagBitsKHR ob
      else
          _OUT << "\"" << VkSurfaceTransformFlagBitsKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkSurfaceTransformFlagBitsKHR(const VkSurfaceTransformFlagBitsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSurfaceTransformFlagBitsKHR(const VkSurfaceTransformFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -25703,7 +23856,7 @@ static std::map<deUint64, std::string> VkPresentModeKHR_map = {
     std::make_pair(1000111000, "VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR"),
     std::make_pair(1000111001, "VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR"),
 };
-static void print_VkPresentModeKHR(VkPresentModeKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkPresentModeKHR(VkPresentModeKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -25711,7 +23864,7 @@ static void print_VkPresentModeKHR(VkPresentModeKHR obj, const std::string& str,
      else
          _OUT << "\"" << VkPresentModeKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkPresentModeKHR(const VkPresentModeKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPresentModeKHR(const VkPresentModeKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -25738,7 +23891,7 @@ static std::map<deUint64, std::string> VkColorSpaceKHR_map = {
     std::make_pair(1000104014, "VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT"),
     std::make_pair(1000213000, "VK_COLOR_SPACE_DISPLAY_NATIVE_AMD"),
 };
-static void print_VkColorSpaceKHR(VkColorSpaceKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkColorSpaceKHR(VkColorSpaceKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -25746,7 +23899,7 @@ static void print_VkColorSpaceKHR(VkColorSpaceKHR obj, const std::string& str, b
      else
          _OUT << "\"" << VkColorSpaceKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkColorSpaceKHR(const VkColorSpaceKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkColorSpaceKHR(const VkColorSpaceKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -25761,7 +23914,7 @@ static std::map<deUint64, std::string> VkCompositeAlphaFlagBitsKHR_map = {
     std::make_pair(1ULL << 2, "VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR"),
     std::make_pair(1ULL << 3, "VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR"),
 };
-static void print_VkCompositeAlphaFlagBitsKHR(VkCompositeAlphaFlagBitsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkCompositeAlphaFlagBitsKHR(VkCompositeAlphaFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -25769,7 +23922,7 @@ static void print_VkCompositeAlphaFlagBitsKHR(VkCompositeAlphaFlagBitsKHR obj, c
      else
          _OUT << "\"" << VkCompositeAlphaFlagBitsKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkCompositeAlphaFlagBitsKHR(const VkCompositeAlphaFlagBitsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCompositeAlphaFlagBitsKHR(const VkCompositeAlphaFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -25778,7 +23931,7 @@ static void print_VkCompositeAlphaFlagBitsKHR(const VkCompositeAlphaFlagBitsKHR
          _OUT << "\"" << VkCompositeAlphaFlagBitsKHR_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkCompositeAlphaFlagsKHR(VkCompositeAlphaFlagsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkCompositeAlphaFlagsKHR(VkCompositeAlphaFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -25800,7 +23953,7 @@ static void print_VkCompositeAlphaFlagsKHR(VkCompositeAlphaFlagsKHR obj, const s
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkCompositeAlphaFlagsKHR(const VkCompositeAlphaFlagsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkCompositeAlphaFlagsKHR(const VkCompositeAlphaFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -25823,7 +23976,7 @@ static void print_VkCompositeAlphaFlagsKHR(const VkCompositeAlphaFlagsKHR * obj,
      _OUT << std::endl;
 }
 
-static void print_VkSurfaceTransformFlagsKHR(VkSurfaceTransformFlagsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkSurfaceTransformFlagsKHR(VkSurfaceTransformFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -25845,7 +23998,7 @@ static void print_VkSurfaceTransformFlagsKHR(VkSurfaceTransformFlagsKHR obj, con
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkSurfaceTransformFlagsKHR(const VkSurfaceTransformFlagsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSurfaceTransformFlagsKHR(const VkSurfaceTransformFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -25868,7 +24021,7 @@ static void print_VkSurfaceTransformFlagsKHR(const VkSurfaceTransformFlagsKHR *
      _OUT << std::endl;
 }
 
-static void print_VkSurfaceCapabilitiesKHR(VkSurfaceCapabilitiesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkSurfaceCapabilitiesKHR(VkSurfaceCapabilitiesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25912,7 +24065,7 @@ static void print_VkSurfaceCapabilitiesKHR(VkSurfaceCapabilitiesKHR obj, const s
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSurfaceCapabilitiesKHR(const VkSurfaceCapabilitiesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSurfaceCapabilitiesKHR(const VkSurfaceCapabilitiesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25957,7 +24110,7 @@ static void print_VkSurfaceCapabilitiesKHR(const VkSurfaceCapabilitiesKHR * obj,
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSurfaceFormatKHR(VkSurfaceFormatKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkSurfaceFormatKHR(VkSurfaceFormatKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25973,7 +24126,7 @@ static void print_VkSurfaceFormatKHR(VkSurfaceFormatKHR obj, const std::string&
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSurfaceFormatKHR(const VkSurfaceFormatKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSurfaceFormatKHR(const VkSurfaceFormatKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -25990,14 +24143,14 @@ static void print_VkSurfaceFormatKHR(const VkSurfaceFormatKHR * obj, const std::
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSwapchainKHR(VkSwapchainKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkSwapchainKHR(VkSwapchainKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkSwapchainKHR(const VkSwapchainKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSwapchainKHR(const VkSwapchainKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -26011,7 +24164,7 @@ static std::map<deUint64, std::string> VkSwapchainCreateFlagBitsKHR_map = {
     std::make_pair(1ULL << 0, "VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR"),
     std::make_pair(1ULL << 2, "VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR"),
 };
-static void print_VkSwapchainCreateFlagBitsKHR(VkSwapchainCreateFlagBitsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkSwapchainCreateFlagBitsKHR(VkSwapchainCreateFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -26019,7 +24172,7 @@ static void print_VkSwapchainCreateFlagBitsKHR(VkSwapchainCreateFlagBitsKHR obj,
      else
          _OUT << "\"" << VkSwapchainCreateFlagBitsKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkSwapchainCreateFlagBitsKHR(const VkSwapchainCreateFlagBitsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSwapchainCreateFlagBitsKHR(const VkSwapchainCreateFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -26034,7 +24187,7 @@ static std::map<deUint64, std::string> VkDeviceGroupPresentModeFlagBitsKHR_map =
     std::make_pair(1ULL << 2, "VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR"),
     std::make_pair(1ULL << 3, "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR"),
 };
-static void print_VkDeviceGroupPresentModeFlagBitsKHR(VkDeviceGroupPresentModeFlagBitsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceGroupPresentModeFlagBitsKHR(VkDeviceGroupPresentModeFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -26042,7 +24195,7 @@ static void print_VkDeviceGroupPresentModeFlagBitsKHR(VkDeviceGroupPresentModeFl
      else
          _OUT << "\"" << VkDeviceGroupPresentModeFlagBitsKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkDeviceGroupPresentModeFlagBitsKHR(const VkDeviceGroupPresentModeFlagBitsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceGroupPresentModeFlagBitsKHR(const VkDeviceGroupPresentModeFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -26051,7 +24204,7 @@ static void print_VkDeviceGroupPresentModeFlagBitsKHR(const VkDeviceGroupPresent
          _OUT << "\"" << VkDeviceGroupPresentModeFlagBitsKHR_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkSwapchainCreateFlagsKHR(VkSwapchainCreateFlagsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkSwapchainCreateFlagsKHR(VkSwapchainCreateFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -26073,7 +24226,7 @@ static void print_VkSwapchainCreateFlagsKHR(VkSwapchainCreateFlagsKHR obj, const
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkSwapchainCreateFlagsKHR(const VkSwapchainCreateFlagsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSwapchainCreateFlagsKHR(const VkSwapchainCreateFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -26096,7 +24249,7 @@ static void print_VkSwapchainCreateFlagsKHR(const VkSwapchainCreateFlagsKHR * ob
      _OUT << std::endl;
 }
 
-static void print_VkDeviceGroupPresentModeFlagsKHR(VkDeviceGroupPresentModeFlagsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceGroupPresentModeFlagsKHR(VkDeviceGroupPresentModeFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -26118,7 +24271,7 @@ static void print_VkDeviceGroupPresentModeFlagsKHR(VkDeviceGroupPresentModeFlags
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkDeviceGroupPresentModeFlagsKHR(const VkDeviceGroupPresentModeFlagsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceGroupPresentModeFlagsKHR(const VkDeviceGroupPresentModeFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -26141,7 +24294,7 @@ static void print_VkDeviceGroupPresentModeFlagsKHR(const VkDeviceGroupPresentMod
      _OUT << std::endl;
 }
 
-static void print_VkSwapchainCreateInfoKHR(VkSwapchainCreateInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkSwapchainCreateInfoKHR(VkSwapchainCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26186,8 +24339,6 @@ static void print_VkSwapchainCreateInfoKHR(VkSwapchainCreateInfoKHR obj, const s
      if (obj.pQueueFamilyIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.queueFamilyIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pQueueFamilyIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.queueFamilyIndexCount;
            print_uint32_t(obj.pQueueFamilyIndices[i], "", isCommaNeeded);
        }
@@ -26215,7 +24366,7 @@ static void print_VkSwapchainCreateInfoKHR(VkSwapchainCreateInfoKHR obj, const s
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSwapchainCreateInfoKHR(const VkSwapchainCreateInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSwapchainCreateInfoKHR(const VkSwapchainCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26260,8 +24411,6 @@ static void print_VkSwapchainCreateInfoKHR(const VkSwapchainCreateInfoKHR * obj,
      if (obj->pQueueFamilyIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->queueFamilyIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pQueueFamilyIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->queueFamilyIndexCount;
            print_uint32_t(obj->pQueueFamilyIndices[i], "", isCommaNeeded);
        }
@@ -26290,7 +24439,7 @@ static void print_VkSwapchainCreateInfoKHR(const VkSwapchainCreateInfoKHR * obj,
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPresentInfoKHR(VkPresentInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPresentInfoKHR(VkPresentInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26348,8 +24497,6 @@ static void print_VkPresentInfoKHR(VkPresentInfoKHR obj, const std::string& s, b
      if (obj.pImageIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.swapchainCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pImageIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.swapchainCount;
            print_uint32_t(obj.pImageIndices[i], "", isCommaNeeded);
        }
@@ -26365,8 +24512,6 @@ static void print_VkPresentInfoKHR(VkPresentInfoKHR obj, const std::string& s, b
      if (obj.pResults) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.swapchainCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pResults" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.swapchainCount;
            print_VkResult(obj.pResults[i], "", isCommaNeeded);
        }
@@ -26383,7 +24528,7 @@ static void print_VkPresentInfoKHR(VkPresentInfoKHR obj, const std::string& s, b
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPresentInfoKHR(const VkPresentInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPresentInfoKHR(const VkPresentInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26441,8 +24586,6 @@ static void print_VkPresentInfoKHR(const VkPresentInfoKHR * obj, const std::stri
      if (obj->pImageIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->swapchainCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pImageIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->swapchainCount;
            print_uint32_t(obj->pImageIndices[i], "", isCommaNeeded);
        }
@@ -26458,8 +24601,6 @@ static void print_VkPresentInfoKHR(const VkPresentInfoKHR * obj, const std::stri
      if (obj->pResults) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->swapchainCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pResults" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->swapchainCount;
            print_VkResult(obj->pResults[i], "", isCommaNeeded);
        }
@@ -26477,7 +24618,7 @@ static void print_VkPresentInfoKHR(const VkPresentInfoKHR * obj, const std::stri
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageSwapchainCreateInfoKHR(VkImageSwapchainCreateInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageSwapchainCreateInfoKHR(VkImageSwapchainCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26501,7 +24642,7 @@ static void print_VkImageSwapchainCreateInfoKHR(VkImageSwapchainCreateInfoKHR ob
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageSwapchainCreateInfoKHR(const VkImageSwapchainCreateInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageSwapchainCreateInfoKHR(const VkImageSwapchainCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26526,7 +24667,7 @@ static void print_VkImageSwapchainCreateInfoKHR(const VkImageSwapchainCreateInfo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBindImageMemorySwapchainInfoKHR(VkBindImageMemorySwapchainInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkBindImageMemorySwapchainInfoKHR(VkBindImageMemorySwapchainInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26552,7 +24693,7 @@ static void print_VkBindImageMemorySwapchainInfoKHR(VkBindImageMemorySwapchainIn
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBindImageMemorySwapchainInfoKHR(const VkBindImageMemorySwapchainInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBindImageMemorySwapchainInfoKHR(const VkBindImageMemorySwapchainInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26579,7 +24720,7 @@ static void print_VkBindImageMemorySwapchainInfoKHR(const VkBindImageMemorySwapc
          _OUT << "}" << std::endl;
 }
 
-static void print_VkAcquireNextImageInfoKHR(VkAcquireNextImageInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkAcquireNextImageInfoKHR(VkAcquireNextImageInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26613,7 +24754,7 @@ static void print_VkAcquireNextImageInfoKHR(VkAcquireNextImageInfoKHR obj, const
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkAcquireNextImageInfoKHR(const VkAcquireNextImageInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkAcquireNextImageInfoKHR(const VkAcquireNextImageInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26648,7 +24789,7 @@ static void print_VkAcquireNextImageInfoKHR(const VkAcquireNextImageInfoKHR * ob
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDeviceGroupPresentCapabilitiesKHR(VkDeviceGroupPresentCapabilitiesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupPresentCapabilitiesKHR(VkDeviceGroupPresentCapabilitiesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26668,8 +24809,6 @@ static void print_VkDeviceGroupPresentCapabilitiesKHR(VkDeviceGroupPresentCapabi
      if (obj.presentMask) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DEVICE_GROUP_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "presentMask" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DEVICE_GROUP_SIZE;
            print_uint32_t(obj.presentMask[i], "", isCommaNeeded);
        }
@@ -26688,7 +24827,7 @@ static void print_VkDeviceGroupPresentCapabilitiesKHR(VkDeviceGroupPresentCapabi
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceGroupPresentCapabilitiesKHR(const VkDeviceGroupPresentCapabilitiesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupPresentCapabilitiesKHR(const VkDeviceGroupPresentCapabilitiesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26708,8 +24847,6 @@ static void print_VkDeviceGroupPresentCapabilitiesKHR(const VkDeviceGroupPresent
      if (obj->presentMask) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DEVICE_GROUP_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "presentMask" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DEVICE_GROUP_SIZE;
            print_uint32_t(obj->presentMask[i], "", isCommaNeeded);
        }
@@ -26729,7 +24866,7 @@ static void print_VkDeviceGroupPresentCapabilitiesKHR(const VkDeviceGroupPresent
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDeviceGroupPresentInfoKHR(VkDeviceGroupPresentInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupPresentInfoKHR(VkDeviceGroupPresentInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26751,8 +24888,6 @@ static void print_VkDeviceGroupPresentInfoKHR(VkDeviceGroupPresentInfoKHR obj, c
      if (obj.pDeviceMasks) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.swapchainCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDeviceMasks" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.swapchainCount;
            print_uint32_t(obj.pDeviceMasks[i], "", isCommaNeeded);
        }
@@ -26771,7 +24906,7 @@ static void print_VkDeviceGroupPresentInfoKHR(VkDeviceGroupPresentInfoKHR obj, c
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceGroupPresentInfoKHR(const VkDeviceGroupPresentInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupPresentInfoKHR(const VkDeviceGroupPresentInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26793,8 +24928,6 @@ static void print_VkDeviceGroupPresentInfoKHR(const VkDeviceGroupPresentInfoKHR
      if (obj->pDeviceMasks) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->swapchainCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDeviceMasks" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->swapchainCount;
            print_uint32_t(obj->pDeviceMasks[i], "", isCommaNeeded);
        }
@@ -26814,7 +24947,7 @@ static void print_VkDeviceGroupPresentInfoKHR(const VkDeviceGroupPresentInfoKHR
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDeviceGroupSwapchainCreateInfoKHR(VkDeviceGroupSwapchainCreateInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupSwapchainCreateInfoKHR(VkDeviceGroupSwapchainCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26837,7 +24970,7 @@ static void print_VkDeviceGroupSwapchainCreateInfoKHR(VkDeviceGroupSwapchainCrea
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceGroupSwapchainCreateInfoKHR(const VkDeviceGroupSwapchainCreateInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceGroupSwapchainCreateInfoKHR(const VkDeviceGroupSwapchainCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -26861,14 +24994,14 @@ static void print_VkDeviceGroupSwapchainCreateInfoKHR(const VkDeviceGroupSwapcha
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplayKHR(VkDisplayKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayKHR(VkDisplayKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkDisplayKHR(const VkDisplayKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayKHR(const VkDisplayKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -26876,14 +25009,14 @@ static void print_VkDisplayKHR(const VkDisplayKHR * obj, const std::string& str,
          _OUT << "\"" << str << "\"" << std::endl;
 }
 
-static void print_VkDisplayModeKHR(VkDisplayModeKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayModeKHR(VkDisplayModeKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkDisplayModeKHR(const VkDisplayModeKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayModeKHR(const VkDisplayModeKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -26897,7 +25030,7 @@ static std::map<deUint64, std::string> VkDisplayPlaneAlphaFlagBitsKHR_map = {
     std::make_pair(1ULL << 2, "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR"),
     std::make_pair(1ULL << 3, "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR"),
 };
-static void print_VkDisplayPlaneAlphaFlagBitsKHR(VkDisplayPlaneAlphaFlagBitsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayPlaneAlphaFlagBitsKHR(VkDisplayPlaneAlphaFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -26905,7 +25038,7 @@ static void print_VkDisplayPlaneAlphaFlagBitsKHR(VkDisplayPlaneAlphaFlagBitsKHR
      else
          _OUT << "\"" << VkDisplayPlaneAlphaFlagBitsKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkDisplayPlaneAlphaFlagBitsKHR(const VkDisplayPlaneAlphaFlagBitsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayPlaneAlphaFlagBitsKHR(const VkDisplayPlaneAlphaFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -26914,14 +25047,14 @@ static void print_VkDisplayPlaneAlphaFlagBitsKHR(const VkDisplayPlaneAlphaFlagBi
          _OUT << "\"" << VkDisplayPlaneAlphaFlagBitsKHR_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkDisplayModeCreateFlagsKHR(VkDisplayModeCreateFlagsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayModeCreateFlagsKHR(VkDisplayModeCreateFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkDisplayModeCreateFlagsKHR(const VkDisplayModeCreateFlagsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayModeCreateFlagsKHR(const VkDisplayModeCreateFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -26929,7 +25062,7 @@ static void print_VkDisplayModeCreateFlagsKHR(const VkDisplayModeCreateFlagsKHR
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkDisplayPlaneAlphaFlagsKHR(VkDisplayPlaneAlphaFlagsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayPlaneAlphaFlagsKHR(VkDisplayPlaneAlphaFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -26951,7 +25084,7 @@ static void print_VkDisplayPlaneAlphaFlagsKHR(VkDisplayPlaneAlphaFlagsKHR obj, c
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkDisplayPlaneAlphaFlagsKHR(const VkDisplayPlaneAlphaFlagsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayPlaneAlphaFlagsKHR(const VkDisplayPlaneAlphaFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -26974,14 +25107,14 @@ static void print_VkDisplayPlaneAlphaFlagsKHR(const VkDisplayPlaneAlphaFlagsKHR
      _OUT << std::endl;
 }
 
-static void print_VkDisplaySurfaceCreateFlagsKHR(VkDisplaySurfaceCreateFlagsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplaySurfaceCreateFlagsKHR(VkDisplaySurfaceCreateFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkDisplaySurfaceCreateFlagsKHR(const VkDisplaySurfaceCreateFlagsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplaySurfaceCreateFlagsKHR(const VkDisplaySurfaceCreateFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -26989,7 +25122,7 @@ static void print_VkDisplaySurfaceCreateFlagsKHR(const VkDisplaySurfaceCreateFla
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkDisplayModeParametersKHR(VkDisplayModeParametersKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayModeParametersKHR(VkDisplayModeParametersKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27009,7 +25142,7 @@ static void print_VkDisplayModeParametersKHR(VkDisplayModeParametersKHR obj, con
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayModeParametersKHR(const VkDisplayModeParametersKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayModeParametersKHR(const VkDisplayModeParametersKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27030,7 +25163,7 @@ static void print_VkDisplayModeParametersKHR(const VkDisplayModeParametersKHR *
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplayModeCreateInfoKHR(VkDisplayModeCreateInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayModeCreateInfoKHR(VkDisplayModeCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27059,7 +25192,7 @@ static void print_VkDisplayModeCreateInfoKHR(VkDisplayModeCreateInfoKHR obj, con
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayModeCreateInfoKHR(const VkDisplayModeCreateInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayModeCreateInfoKHR(const VkDisplayModeCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27089,7 +25222,7 @@ static void print_VkDisplayModeCreateInfoKHR(const VkDisplayModeCreateInfoKHR *
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplayModePropertiesKHR(VkDisplayModePropertiesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayModePropertiesKHR(VkDisplayModePropertiesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27110,7 +25243,7 @@ static void print_VkDisplayModePropertiesKHR(VkDisplayModePropertiesKHR obj, con
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayModePropertiesKHR(const VkDisplayModePropertiesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayModePropertiesKHR(const VkDisplayModePropertiesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27132,7 +25265,7 @@ static void print_VkDisplayModePropertiesKHR(const VkDisplayModePropertiesKHR *
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplayPlaneCapabilitiesKHR(VkDisplayPlaneCapabilitiesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPlaneCapabilitiesKHR(VkDisplayPlaneCapabilitiesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27194,7 +25327,7 @@ static void print_VkDisplayPlaneCapabilitiesKHR(VkDisplayPlaneCapabilitiesKHR ob
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayPlaneCapabilitiesKHR(const VkDisplayPlaneCapabilitiesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPlaneCapabilitiesKHR(const VkDisplayPlaneCapabilitiesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27257,7 +25390,7 @@ static void print_VkDisplayPlaneCapabilitiesKHR(const VkDisplayPlaneCapabilities
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplayPlanePropertiesKHR(VkDisplayPlanePropertiesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPlanePropertiesKHR(VkDisplayPlanePropertiesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27274,7 +25407,7 @@ static void print_VkDisplayPlanePropertiesKHR(VkDisplayPlanePropertiesKHR obj, c
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayPlanePropertiesKHR(const VkDisplayPlanePropertiesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPlanePropertiesKHR(const VkDisplayPlanePropertiesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27292,7 +25425,7 @@ static void print_VkDisplayPlanePropertiesKHR(const VkDisplayPlanePropertiesKHR
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplayPropertiesKHR(VkDisplayPropertiesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPropertiesKHR(VkDisplayPropertiesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27327,7 +25460,7 @@ static void print_VkDisplayPropertiesKHR(VkDisplayPropertiesKHR obj, const std::
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayPropertiesKHR(const VkDisplayPropertiesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPropertiesKHR(const VkDisplayPropertiesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27363,7 +25496,7 @@ static void print_VkDisplayPropertiesKHR(const VkDisplayPropertiesKHR * obj, con
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplaySurfaceCreateInfoKHR(VkDisplaySurfaceCreateInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplaySurfaceCreateInfoKHR(VkDisplaySurfaceCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27405,7 +25538,7 @@ static void print_VkDisplaySurfaceCreateInfoKHR(VkDisplaySurfaceCreateInfoKHR ob
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplaySurfaceCreateInfoKHR(const VkDisplaySurfaceCreateInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplaySurfaceCreateInfoKHR(const VkDisplaySurfaceCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27448,7 +25581,7 @@ static void print_VkDisplaySurfaceCreateInfoKHR(const VkDisplaySurfaceCreateInfo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplayPresentInfoKHR(VkDisplayPresentInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPresentInfoKHR(VkDisplayPresentInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27483,7 +25616,7 @@ static void print_VkDisplayPresentInfoKHR(VkDisplayPresentInfoKHR obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayPresentInfoKHR(const VkDisplayPresentInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPresentInfoKHR(const VkDisplayPresentInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27519,7 +25652,7 @@ static void print_VkDisplayPresentInfoKHR(const VkDisplayPresentInfoKHR * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImportMemoryFdInfoKHR(VkImportMemoryFdInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkImportMemoryFdInfoKHR(VkImportMemoryFdInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27544,7 +25677,7 @@ static void print_VkImportMemoryFdInfoKHR(VkImportMemoryFdInfoKHR obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImportMemoryFdInfoKHR(const VkImportMemoryFdInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImportMemoryFdInfoKHR(const VkImportMemoryFdInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27570,7 +25703,7 @@ static void print_VkImportMemoryFdInfoKHR(const VkImportMemoryFdInfoKHR * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMemoryFdPropertiesKHR(VkMemoryFdPropertiesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryFdPropertiesKHR(VkMemoryFdPropertiesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27593,7 +25726,7 @@ static void print_VkMemoryFdPropertiesKHR(VkMemoryFdPropertiesKHR obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryFdPropertiesKHR(const VkMemoryFdPropertiesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryFdPropertiesKHR(const VkMemoryFdPropertiesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27617,7 +25750,7 @@ static void print_VkMemoryFdPropertiesKHR(const VkMemoryFdPropertiesKHR * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMemoryGetFdInfoKHR(VkMemoryGetFdInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryGetFdInfoKHR(VkMemoryGetFdInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27643,7 +25776,7 @@ static void print_VkMemoryGetFdInfoKHR(VkMemoryGetFdInfoKHR obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryGetFdInfoKHR(const VkMemoryGetFdInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryGetFdInfoKHR(const VkMemoryGetFdInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27670,7 +25803,7 @@ static void print_VkMemoryGetFdInfoKHR(const VkMemoryGetFdInfoKHR * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImportSemaphoreFdInfoKHR(VkImportSemaphoreFdInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkImportSemaphoreFdInfoKHR(VkImportSemaphoreFdInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27700,7 +25833,7 @@ static void print_VkImportSemaphoreFdInfoKHR(VkImportSemaphoreFdInfoKHR obj, con
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImportSemaphoreFdInfoKHR(const VkImportSemaphoreFdInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImportSemaphoreFdInfoKHR(const VkImportSemaphoreFdInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27731,7 +25864,7 @@ static void print_VkImportSemaphoreFdInfoKHR(const VkImportSemaphoreFdInfoKHR *
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSemaphoreGetFdInfoKHR(VkSemaphoreGetFdInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkSemaphoreGetFdInfoKHR(VkSemaphoreGetFdInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27757,7 +25890,7 @@ static void print_VkSemaphoreGetFdInfoKHR(VkSemaphoreGetFdInfoKHR obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSemaphoreGetFdInfoKHR(const VkSemaphoreGetFdInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSemaphoreGetFdInfoKHR(const VkSemaphoreGetFdInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27784,7 +25917,7 @@ static void print_VkSemaphoreGetFdInfoKHR(const VkSemaphoreGetFdInfoKHR * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkRectLayerKHR(VkRectLayerKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkRectLayerKHR(VkRectLayerKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27810,7 +25943,7 @@ static void print_VkRectLayerKHR(VkRectLayerKHR obj, const std::string& s, bool
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkRectLayerKHR(const VkRectLayerKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkRectLayerKHR(const VkRectLayerKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27837,7 +25970,7 @@ static void print_VkRectLayerKHR(const VkRectLayerKHR * obj, const std::string&
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPresentRegionKHR(VkPresentRegionKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPresentRegionKHR(VkPresentRegionKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27870,7 +26003,7 @@ static void print_VkPresentRegionKHR(VkPresentRegionKHR obj, const std::string&
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPresentRegionKHR(const VkPresentRegionKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPresentRegionKHR(const VkPresentRegionKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27904,7 +26037,7 @@ static void print_VkPresentRegionKHR(const VkPresentRegionKHR * obj, const std::
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPresentRegionsKHR(VkPresentRegionsKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPresentRegionsKHR(VkPresentRegionsKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27946,7 +26079,7 @@ static void print_VkPresentRegionsKHR(VkPresentRegionsKHR obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPresentRegionsKHR(const VkPresentRegionsKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPresentRegionsKHR(const VkPresentRegionsKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -27989,7 +26122,7 @@ static void print_VkPresentRegionsKHR(const VkPresentRegionsKHR * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSharedPresentSurfaceCapabilitiesKHR(VkSharedPresentSurfaceCapabilitiesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkSharedPresentSurfaceCapabilitiesKHR(VkSharedPresentSurfaceCapabilitiesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28012,7 +26145,7 @@ static void print_VkSharedPresentSurfaceCapabilitiesKHR(VkSharedPresentSurfaceCa
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSharedPresentSurfaceCapabilitiesKHR(const VkSharedPresentSurfaceCapabilitiesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSharedPresentSurfaceCapabilitiesKHR(const VkSharedPresentSurfaceCapabilitiesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28036,7 +26169,7 @@ static void print_VkSharedPresentSurfaceCapabilitiesKHR(const VkSharedPresentSur
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImportFenceFdInfoKHR(VkImportFenceFdInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkImportFenceFdInfoKHR(VkImportFenceFdInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28066,7 +26199,7 @@ static void print_VkImportFenceFdInfoKHR(VkImportFenceFdInfoKHR obj, const std::
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImportFenceFdInfoKHR(const VkImportFenceFdInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImportFenceFdInfoKHR(const VkImportFenceFdInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28097,7 +26230,7 @@ static void print_VkImportFenceFdInfoKHR(const VkImportFenceFdInfoKHR * obj, con
          _OUT << "}" << std::endl;
 }
 
-static void print_VkFenceGetFdInfoKHR(VkFenceGetFdInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkFenceGetFdInfoKHR(VkFenceGetFdInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28123,7 +26256,7 @@ static void print_VkFenceGetFdInfoKHR(VkFenceGetFdInfoKHR obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkFenceGetFdInfoKHR(const VkFenceGetFdInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkFenceGetFdInfoKHR(const VkFenceGetFdInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28163,7 +26296,7 @@ static std::map<deUint64, std::string> VkPerformanceCounterUnitKHR_map = {
     std::make_pair(9, "VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR"),
     std::make_pair(10, "VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR"),
 };
-static void print_VkPerformanceCounterUnitKHR(VkPerformanceCounterUnitKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkPerformanceCounterUnitKHR(VkPerformanceCounterUnitKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -28171,7 +26304,7 @@ static void print_VkPerformanceCounterUnitKHR(VkPerformanceCounterUnitKHR obj, c
      else
          _OUT << "\"" << VkPerformanceCounterUnitKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkPerformanceCounterUnitKHR(const VkPerformanceCounterUnitKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPerformanceCounterUnitKHR(const VkPerformanceCounterUnitKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -28185,7 +26318,7 @@ static std::map<deUint64, std::string> VkPerformanceCounterScopeKHR_map = {
     std::make_pair(1, "VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR"),
     std::make_pair(2, "VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR"),
 };
-static void print_VkPerformanceCounterScopeKHR(VkPerformanceCounterScopeKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkPerformanceCounterScopeKHR(VkPerformanceCounterScopeKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -28193,7 +26326,7 @@ static void print_VkPerformanceCounterScopeKHR(VkPerformanceCounterScopeKHR obj,
      else
          _OUT << "\"" << VkPerformanceCounterScopeKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkPerformanceCounterScopeKHR(const VkPerformanceCounterScopeKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPerformanceCounterScopeKHR(const VkPerformanceCounterScopeKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -28210,7 +26343,7 @@ static std::map<deUint64, std::string> VkPerformanceCounterStorageKHR_map = {
     std::make_pair(4, "VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR"),
     std::make_pair(5, "VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR"),
 };
-static void print_VkPerformanceCounterStorageKHR(VkPerformanceCounterStorageKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkPerformanceCounterStorageKHR(VkPerformanceCounterStorageKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -28218,7 +26351,7 @@ static void print_VkPerformanceCounterStorageKHR(VkPerformanceCounterStorageKHR
      else
          _OUT << "\"" << VkPerformanceCounterStorageKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkPerformanceCounterStorageKHR(const VkPerformanceCounterStorageKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPerformanceCounterStorageKHR(const VkPerformanceCounterStorageKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -28231,7 +26364,7 @@ static std::map<deUint64, std::string> VkPerformanceCounterDescriptionFlagBitsKH
     std::make_pair(1ULL << 0, "VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR"),
     std::make_pair(1ULL << 1, "VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR"),
 };
-static void print_VkPerformanceCounterDescriptionFlagBitsKHR(VkPerformanceCounterDescriptionFlagBitsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkPerformanceCounterDescriptionFlagBitsKHR(VkPerformanceCounterDescriptionFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -28239,7 +26372,7 @@ static void print_VkPerformanceCounterDescriptionFlagBitsKHR(VkPerformanceCounte
      else
          _OUT << "\"" << VkPerformanceCounterDescriptionFlagBitsKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkPerformanceCounterDescriptionFlagBitsKHR(const VkPerformanceCounterDescriptionFlagBitsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPerformanceCounterDescriptionFlagBitsKHR(const VkPerformanceCounterDescriptionFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -28250,7 +26383,7 @@ static void print_VkPerformanceCounterDescriptionFlagBitsKHR(const VkPerformance
 
 static std::map<deUint64, std::string> VkAcquireProfilingLockFlagBitsKHR_map = {
 };
-static void print_VkAcquireProfilingLockFlagBitsKHR(VkAcquireProfilingLockFlagBitsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkAcquireProfilingLockFlagBitsKHR(VkAcquireProfilingLockFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -28258,7 +26391,7 @@ static void print_VkAcquireProfilingLockFlagBitsKHR(VkAcquireProfilingLockFlagBi
      else
          _OUT << "\"" << VkAcquireProfilingLockFlagBitsKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkAcquireProfilingLockFlagBitsKHR(const VkAcquireProfilingLockFlagBitsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkAcquireProfilingLockFlagBitsKHR(const VkAcquireProfilingLockFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -28267,7 +26400,7 @@ static void print_VkAcquireProfilingLockFlagBitsKHR(const VkAcquireProfilingLock
          _OUT << "\"" << VkAcquireProfilingLockFlagBitsKHR_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkPerformanceCounterDescriptionFlagsKHR(VkPerformanceCounterDescriptionFlagsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkPerformanceCounterDescriptionFlagsKHR(VkPerformanceCounterDescriptionFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -28289,7 +26422,7 @@ static void print_VkPerformanceCounterDescriptionFlagsKHR(VkPerformanceCounterDe
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkPerformanceCounterDescriptionFlagsKHR(const VkPerformanceCounterDescriptionFlagsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPerformanceCounterDescriptionFlagsKHR(const VkPerformanceCounterDescriptionFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -28312,7 +26445,7 @@ static void print_VkPerformanceCounterDescriptionFlagsKHR(const VkPerformanceCou
      _OUT << std::endl;
 }
 
-static void print_VkAcquireProfilingLockFlagsKHR(VkAcquireProfilingLockFlagsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkAcquireProfilingLockFlagsKHR(VkAcquireProfilingLockFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -28334,7 +26467,7 @@ static void print_VkAcquireProfilingLockFlagsKHR(VkAcquireProfilingLockFlagsKHR
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkAcquireProfilingLockFlagsKHR(const VkAcquireProfilingLockFlagsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkAcquireProfilingLockFlagsKHR(const VkAcquireProfilingLockFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -28357,7 +26490,7 @@ static void print_VkAcquireProfilingLockFlagsKHR(const VkAcquireProfilingLockFla
      _OUT << std::endl;
 }
 
-static void print_VkPhysicalDevicePerformanceQueryFeaturesKHR(VkPhysicalDevicePerformanceQueryFeaturesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevicePerformanceQueryFeaturesKHR(VkPhysicalDevicePerformanceQueryFeaturesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28382,7 +26515,7 @@ static void print_VkPhysicalDevicePerformanceQueryFeaturesKHR(VkPhysicalDevicePe
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDevicePerformanceQueryFeaturesKHR(const VkPhysicalDevicePerformanceQueryFeaturesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevicePerformanceQueryFeaturesKHR(const VkPhysicalDevicePerformanceQueryFeaturesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28408,7 +26541,7 @@ static void print_VkPhysicalDevicePerformanceQueryFeaturesKHR(const VkPhysicalDe
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDevicePerformanceQueryPropertiesKHR(VkPhysicalDevicePerformanceQueryPropertiesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevicePerformanceQueryPropertiesKHR(VkPhysicalDevicePerformanceQueryPropertiesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28431,7 +26564,7 @@ static void print_VkPhysicalDevicePerformanceQueryPropertiesKHR(VkPhysicalDevice
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDevicePerformanceQueryPropertiesKHR(const VkPhysicalDevicePerformanceQueryPropertiesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevicePerformanceQueryPropertiesKHR(const VkPhysicalDevicePerformanceQueryPropertiesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28455,7 +26588,7 @@ static void print_VkPhysicalDevicePerformanceQueryPropertiesKHR(const VkPhysical
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPerformanceCounterKHR(VkPerformanceCounterKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPerformanceCounterKHR(VkPerformanceCounterKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28481,8 +26614,6 @@ static void print_VkPerformanceCounterKHR(VkPerformanceCounterKHR obj, const std
      if (obj.uuid) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "uuid" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj.uuid[i], "", isCommaNeeded);
        }
@@ -28499,7 +26630,7 @@ static void print_VkPerformanceCounterKHR(VkPerformanceCounterKHR obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPerformanceCounterKHR(const VkPerformanceCounterKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPerformanceCounterKHR(const VkPerformanceCounterKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28525,8 +26656,6 @@ static void print_VkPerformanceCounterKHR(const VkPerformanceCounterKHR * obj, c
      if (obj->uuid) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "uuid" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
            print_uint8_t(obj->uuid[i], "", isCommaNeeded);
        }
@@ -28544,7 +26673,7 @@ static void print_VkPerformanceCounterKHR(const VkPerformanceCounterKHR * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPerformanceCounterDescriptionKHR(VkPerformanceCounterDescriptionKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPerformanceCounterDescriptionKHR(VkPerformanceCounterDescriptionKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28566,8 +26695,6 @@ static void print_VkPerformanceCounterDescriptionKHR(VkPerformanceCounterDescrip
      if (obj.name) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "name" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
            print_char(obj.name[i], "", isCommaNeeded);
        }
@@ -28583,8 +26710,6 @@ static void print_VkPerformanceCounterDescriptionKHR(VkPerformanceCounterDescrip
      if (obj.category) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "category" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
            print_char(obj.category[i], "", isCommaNeeded);
        }
@@ -28600,8 +26725,6 @@ static void print_VkPerformanceCounterDescriptionKHR(VkPerformanceCounterDescrip
      if (obj.description) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "description" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
            print_char(obj.description[i], "", isCommaNeeded);
        }
@@ -28618,7 +26741,7 @@ static void print_VkPerformanceCounterDescriptionKHR(VkPerformanceCounterDescrip
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPerformanceCounterDescriptionKHR(const VkPerformanceCounterDescriptionKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPerformanceCounterDescriptionKHR(const VkPerformanceCounterDescriptionKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28640,8 +26763,6 @@ static void print_VkPerformanceCounterDescriptionKHR(const VkPerformanceCounterD
      if (obj->name) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "name" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
            print_char(obj->name[i], "", isCommaNeeded);
        }
@@ -28657,8 +26778,6 @@ static void print_VkPerformanceCounterDescriptionKHR(const VkPerformanceCounterD
      if (obj->category) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "category" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
            print_char(obj->category[i], "", isCommaNeeded);
        }
@@ -28674,8 +26793,6 @@ static void print_VkPerformanceCounterDescriptionKHR(const VkPerformanceCounterD
      if (obj->description) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
-           std:: stringstream tmp;
-           tmp << "description" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
            print_char(obj->description[i], "", isCommaNeeded);
        }
@@ -28693,7 +26810,7 @@ static void print_VkPerformanceCounterDescriptionKHR(const VkPerformanceCounterD
          _OUT << "}" << std::endl;
 }
 
-static void print_VkQueryPoolPerformanceCreateInfoKHR(VkQueryPoolPerformanceCreateInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkQueryPoolPerformanceCreateInfoKHR(VkQueryPoolPerformanceCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28717,8 +26834,6 @@ static void print_VkQueryPoolPerformanceCreateInfoKHR(VkQueryPoolPerformanceCrea
      if (obj.pCounterIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.counterIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pCounterIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.counterIndexCount;
            print_uint32_t(obj.pCounterIndices[i], "", isCommaNeeded);
        }
@@ -28735,7 +26850,7 @@ static void print_VkQueryPoolPerformanceCreateInfoKHR(VkQueryPoolPerformanceCrea
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkQueryPoolPerformanceCreateInfoKHR(const VkQueryPoolPerformanceCreateInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkQueryPoolPerformanceCreateInfoKHR(const VkQueryPoolPerformanceCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28759,8 +26874,6 @@ static void print_VkQueryPoolPerformanceCreateInfoKHR(const VkQueryPoolPerforman
      if (obj->pCounterIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->counterIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pCounterIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->counterIndexCount;
            print_uint32_t(obj->pCounterIndices[i], "", isCommaNeeded);
        }
@@ -28778,7 +26891,7 @@ static void print_VkQueryPoolPerformanceCreateInfoKHR(const VkQueryPoolPerforman
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPerformanceCounterResultKHR(VkPerformanceCounterResultKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPerformanceCounterResultKHR(VkPerformanceCounterResultKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28802,7 +26915,7 @@ static void print_VkPerformanceCounterResultKHR(VkPerformanceCounterResultKHR ob
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPerformanceCounterResultKHR(const VkPerformanceCounterResultKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPerformanceCounterResultKHR(const VkPerformanceCounterResultKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28827,7 +26940,7 @@ static void print_VkPerformanceCounterResultKHR(const VkPerformanceCounterResult
          _OUT << "}" << std::endl;
 }
 
-static void print_VkAcquireProfilingLockInfoKHR(VkAcquireProfilingLockInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkAcquireProfilingLockInfoKHR(VkAcquireProfilingLockInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28852,7 +26965,7 @@ static void print_VkAcquireProfilingLockInfoKHR(VkAcquireProfilingLockInfoKHR ob
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkAcquireProfilingLockInfoKHR(const VkAcquireProfilingLockInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkAcquireProfilingLockInfoKHR(const VkAcquireProfilingLockInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28878,7 +26991,7 @@ static void print_VkAcquireProfilingLockInfoKHR(const VkAcquireProfilingLockInfo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPerformanceQuerySubmitInfoKHR(VkPerformanceQuerySubmitInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPerformanceQuerySubmitInfoKHR(VkPerformanceQuerySubmitInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28901,7 +27014,7 @@ static void print_VkPerformanceQuerySubmitInfoKHR(VkPerformanceQuerySubmitInfoKH
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPerformanceQuerySubmitInfoKHR(const VkPerformanceQuerySubmitInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPerformanceQuerySubmitInfoKHR(const VkPerformanceQuerySubmitInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28925,7 +27038,7 @@ static void print_VkPerformanceQuerySubmitInfoKHR(const VkPerformanceQuerySubmit
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPerformanceQueryReservationInfoKHR(VkPerformanceQueryReservationInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPerformanceQueryReservationInfoKHR(VkPerformanceQueryReservationInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28948,7 +27061,7 @@ static void print_VkPerformanceQueryReservationInfoKHR(VkPerformanceQueryReserva
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPerformanceQueryReservationInfoKHR(const VkPerformanceQueryReservationInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPerformanceQueryReservationInfoKHR(const VkPerformanceQueryReservationInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28972,7 +27085,7 @@ static void print_VkPerformanceQueryReservationInfoKHR(const VkPerformanceQueryR
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceSurfaceInfo2KHR(VkPhysicalDeviceSurfaceInfo2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSurfaceInfo2KHR(VkPhysicalDeviceSurfaceInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -28996,7 +27109,7 @@ static void print_VkPhysicalDeviceSurfaceInfo2KHR(VkPhysicalDeviceSurfaceInfo2KH
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceSurfaceInfo2KHR(const VkPhysicalDeviceSurfaceInfo2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSurfaceInfo2KHR(const VkPhysicalDeviceSurfaceInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29021,7 +27134,7 @@ static void print_VkPhysicalDeviceSurfaceInfo2KHR(const VkPhysicalDeviceSurfaceI
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSurfaceCapabilities2KHR(VkSurfaceCapabilities2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkSurfaceCapabilities2KHR(VkSurfaceCapabilities2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29048,7 +27161,7 @@ static void print_VkSurfaceCapabilities2KHR(VkSurfaceCapabilities2KHR obj, const
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSurfaceCapabilities2KHR(const VkSurfaceCapabilities2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSurfaceCapabilities2KHR(const VkSurfaceCapabilities2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29076,7 +27189,7 @@ static void print_VkSurfaceCapabilities2KHR(const VkSurfaceCapabilities2KHR * ob
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSurfaceFormat2KHR(VkSurfaceFormat2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkSurfaceFormat2KHR(VkSurfaceFormat2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29103,7 +27216,7 @@ static void print_VkSurfaceFormat2KHR(VkSurfaceFormat2KHR obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSurfaceFormat2KHR(const VkSurfaceFormat2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSurfaceFormat2KHR(const VkSurfaceFormat2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29131,7 +27244,7 @@ static void print_VkSurfaceFormat2KHR(const VkSurfaceFormat2KHR * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplayProperties2KHR(VkDisplayProperties2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayProperties2KHR(VkDisplayProperties2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29158,7 +27271,7 @@ static void print_VkDisplayProperties2KHR(VkDisplayProperties2KHR obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayProperties2KHR(const VkDisplayProperties2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayProperties2KHR(const VkDisplayProperties2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29186,7 +27299,7 @@ static void print_VkDisplayProperties2KHR(const VkDisplayProperties2KHR * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplayPlaneProperties2KHR(VkDisplayPlaneProperties2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPlaneProperties2KHR(VkDisplayPlaneProperties2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29213,7 +27326,7 @@ static void print_VkDisplayPlaneProperties2KHR(VkDisplayPlaneProperties2KHR obj,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayPlaneProperties2KHR(const VkDisplayPlaneProperties2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPlaneProperties2KHR(const VkDisplayPlaneProperties2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29241,7 +27354,7 @@ static void print_VkDisplayPlaneProperties2KHR(const VkDisplayPlaneProperties2KH
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplayModeProperties2KHR(VkDisplayModeProperties2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayModeProperties2KHR(VkDisplayModeProperties2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29268,7 +27381,7 @@ static void print_VkDisplayModeProperties2KHR(VkDisplayModeProperties2KHR obj, c
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayModeProperties2KHR(const VkDisplayModeProperties2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayModeProperties2KHR(const VkDisplayModeProperties2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29296,7 +27409,7 @@ static void print_VkDisplayModeProperties2KHR(const VkDisplayModeProperties2KHR
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplayPlaneInfo2KHR(VkDisplayPlaneInfo2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPlaneInfo2KHR(VkDisplayPlaneInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29322,7 +27435,7 @@ static void print_VkDisplayPlaneInfo2KHR(VkDisplayPlaneInfo2KHR obj, const std::
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayPlaneInfo2KHR(const VkDisplayPlaneInfo2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPlaneInfo2KHR(const VkDisplayPlaneInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29349,7 +27462,7 @@ static void print_VkDisplayPlaneInfo2KHR(const VkDisplayPlaneInfo2KHR * obj, con
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplayPlaneCapabilities2KHR(VkDisplayPlaneCapabilities2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPlaneCapabilities2KHR(VkDisplayPlaneCapabilities2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29376,7 +27489,7 @@ static void print_VkDisplayPlaneCapabilities2KHR(VkDisplayPlaneCapabilities2KHR
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayPlaneCapabilities2KHR(const VkDisplayPlaneCapabilities2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPlaneCapabilities2KHR(const VkDisplayPlaneCapabilities2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29404,7 +27517,7 @@ static void print_VkDisplayPlaneCapabilities2KHR(const VkDisplayPlaneCapabilitie
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceShaderClockFeaturesKHR(VkPhysicalDeviceShaderClockFeaturesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderClockFeaturesKHR(VkPhysicalDeviceShaderClockFeaturesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29429,7 +27542,7 @@ static void print_VkPhysicalDeviceShaderClockFeaturesKHR(VkPhysicalDeviceShaderC
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceShaderClockFeaturesKHR(const VkPhysicalDeviceShaderClockFeaturesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderClockFeaturesKHR(const VkPhysicalDeviceShaderClockFeaturesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29455,7 +27568,7 @@ static void print_VkPhysicalDeviceShaderClockFeaturesKHR(const VkPhysicalDeviceS
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR(VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR(VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29478,7 +27591,7 @@ static void print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR(VkPhysica
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR(const VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR(const VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29509,7 +27622,7 @@ static std::map<deUint64, std::string> VkFragmentShadingRateCombinerOpKHR_map =
     std::make_pair(3, "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR"),
     std::make_pair(4, "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR"),
 };
-static void print_VkFragmentShadingRateCombinerOpKHR(VkFragmentShadingRateCombinerOpKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkFragmentShadingRateCombinerOpKHR(VkFragmentShadingRateCombinerOpKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -29517,7 +27630,7 @@ static void print_VkFragmentShadingRateCombinerOpKHR(VkFragmentShadingRateCombin
      else
          _OUT << "\"" << VkFragmentShadingRateCombinerOpKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkFragmentShadingRateCombinerOpKHR(const VkFragmentShadingRateCombinerOpKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFragmentShadingRateCombinerOpKHR(const VkFragmentShadingRateCombinerOpKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -29526,7 +27639,7 @@ static void print_VkFragmentShadingRateCombinerOpKHR(const VkFragmentShadingRate
          _OUT << "\"" << VkFragmentShadingRateCombinerOpKHR_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkFragmentShadingRateAttachmentInfoKHR(VkFragmentShadingRateAttachmentInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkFragmentShadingRateAttachmentInfoKHR(VkFragmentShadingRateAttachmentInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29563,7 +27676,7 @@ static void print_VkFragmentShadingRateAttachmentInfoKHR(VkFragmentShadingRateAt
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkFragmentShadingRateAttachmentInfoKHR(const VkFragmentShadingRateAttachmentInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkFragmentShadingRateAttachmentInfoKHR(const VkFragmentShadingRateAttachmentInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29601,7 +27714,7 @@ static void print_VkFragmentShadingRateAttachmentInfoKHR(const VkFragmentShading
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineFragmentShadingRateStateCreateInfoKHR(VkPipelineFragmentShadingRateStateCreateInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineFragmentShadingRateStateCreateInfoKHR(VkPipelineFragmentShadingRateStateCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29627,8 +27740,6 @@ static void print_VkPipelineFragmentShadingRateStateCreateInfoKHR(VkPipelineFrag
      if (obj.combinerOps) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "combinerOps" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_VkFragmentShadingRateCombinerOpKHR(obj.combinerOps[i], "", isCommaNeeded);
        }
@@ -29645,7 +27756,7 @@ static void print_VkPipelineFragmentShadingRateStateCreateInfoKHR(VkPipelineFrag
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineFragmentShadingRateStateCreateInfoKHR(const VkPipelineFragmentShadingRateStateCreateInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineFragmentShadingRateStateCreateInfoKHR(const VkPipelineFragmentShadingRateStateCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29671,8 +27782,6 @@ static void print_VkPipelineFragmentShadingRateStateCreateInfoKHR(const VkPipeli
      if (obj->combinerOps) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "combinerOps" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_VkFragmentShadingRateCombinerOpKHR(obj->combinerOps[i], "", isCommaNeeded);
        }
@@ -29690,7 +27799,7 @@ static void print_VkPipelineFragmentShadingRateStateCreateInfoKHR(const VkPipeli
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(VkPhysicalDeviceFragmentShadingRateFeaturesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(VkPhysicalDeviceFragmentShadingRateFeaturesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29717,7 +27826,7 @@ static void print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(VkPhysicalDevic
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(const VkPhysicalDeviceFragmentShadingRateFeaturesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(const VkPhysicalDeviceFragmentShadingRateFeaturesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29745,7 +27854,7 @@ static void print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(const VkPhysica
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(VkPhysicalDeviceFragmentShadingRatePropertiesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(VkPhysicalDeviceFragmentShadingRatePropertiesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29812,7 +27921,7 @@ static void print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(VkPhysicalDev
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(const VkPhysicalDeviceFragmentShadingRatePropertiesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(const VkPhysicalDeviceFragmentShadingRatePropertiesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29880,7 +27989,7 @@ static void print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(const VkPhysi
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceFragmentShadingRateKHR(VkPhysicalDeviceFragmentShadingRateKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFragmentShadingRateKHR(VkPhysicalDeviceFragmentShadingRateKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29909,7 +28018,7 @@ static void print_VkPhysicalDeviceFragmentShadingRateKHR(VkPhysicalDeviceFragmen
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceFragmentShadingRateKHR(const VkPhysicalDeviceFragmentShadingRateKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFragmentShadingRateKHR(const VkPhysicalDeviceFragmentShadingRateKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -29941,7 +28050,7 @@ static void print_VkPhysicalDeviceFragmentShadingRateKHR(const VkPhysicalDeviceF
 
 static std::map<deUint64, std::string> VkRefreshObjectFlagBitsKHR_map = {
 };
-static void print_VkRefreshObjectFlagBitsKHR(VkRefreshObjectFlagBitsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkRefreshObjectFlagBitsKHR(VkRefreshObjectFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -29949,7 +28058,7 @@ static void print_VkRefreshObjectFlagBitsKHR(VkRefreshObjectFlagBitsKHR obj, con
      else
          _OUT << "\"" << VkRefreshObjectFlagBitsKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkRefreshObjectFlagBitsKHR(const VkRefreshObjectFlagBitsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkRefreshObjectFlagBitsKHR(const VkRefreshObjectFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -29958,7 +28067,7 @@ static void print_VkRefreshObjectFlagBitsKHR(const VkRefreshObjectFlagBitsKHR *
          _OUT << "\"" << VkRefreshObjectFlagBitsKHR_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkRefreshObjectFlagsKHR(VkRefreshObjectFlagsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkRefreshObjectFlagsKHR(VkRefreshObjectFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -29980,7 +28089,7 @@ static void print_VkRefreshObjectFlagsKHR(VkRefreshObjectFlagsKHR obj, const std
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkRefreshObjectFlagsKHR(const VkRefreshObjectFlagsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkRefreshObjectFlagsKHR(const VkRefreshObjectFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -30003,7 +28112,7 @@ static void print_VkRefreshObjectFlagsKHR(const VkRefreshObjectFlagsKHR * obj, c
      _OUT << std::endl;
 }
 
-static void print_VkRefreshObjectKHR(VkRefreshObjectKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkRefreshObjectKHR(VkRefreshObjectKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30021,7 +28130,7 @@ static void print_VkRefreshObjectKHR(VkRefreshObjectKHR obj, const std::string&
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkRefreshObjectKHR(const VkRefreshObjectKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkRefreshObjectKHR(const VkRefreshObjectKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30040,7 +28149,7 @@ static void print_VkRefreshObjectKHR(const VkRefreshObjectKHR * obj, const std::
          _OUT << "}" << std::endl;
 }
 
-static void print_VkRefreshObjectListKHR(VkRefreshObjectListKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkRefreshObjectListKHR(VkRefreshObjectListKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30082,7 +28191,7 @@ static void print_VkRefreshObjectListKHR(VkRefreshObjectListKHR obj, const std::
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkRefreshObjectListKHR(const VkRefreshObjectListKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkRefreshObjectListKHR(const VkRefreshObjectListKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30125,11 +28234,11 @@ static void print_VkRefreshObjectListKHR(const VkRefreshObjectListKHR * obj, con
          _OUT << "}" << std::endl;
 }
 
-static void print_VkFlags64(VkFlags64 obj, const std::string& str, bool commaNeeded) {
+static void print_VkFlags64(VkFlags64 obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
 }
-static void print_VkFlags64(const VkFlags64 * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFlags64(const VkFlags64 * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
 }
@@ -30175,7 +28284,7 @@ static std::map<deUint64, std::string> VkPipelineStageFlagBits2KHR_map = {
     std::make_pair(1ULL << 40, "VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI"),
     std::make_pair(1ULL << 28, "VK_PIPELINE_STAGE_2_RESERVED_387_BIT_KHR"),
 };
-static void print_VkPipelineStageFlagBits2KHR(VkPipelineStageFlagBits2KHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineStageFlagBits2KHR(VkPipelineStageFlagBits2KHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -30183,7 +28292,7 @@ static void print_VkPipelineStageFlagBits2KHR(VkPipelineStageFlagBits2KHR obj, c
      else
          _OUT << "\"" << VkPipelineStageFlagBits2KHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkPipelineStageFlagBits2KHR(const VkPipelineStageFlagBits2KHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineStageFlagBits2KHR(const VkPipelineStageFlagBits2KHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -30229,10 +28338,11 @@ static std::map<deUint64, std::string> VkAccessFlagBits2KHR_map = {
     std::make_pair(1ULL << 22, "VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR"),
     std::make_pair(1ULL << 24, "VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT"),
     std::make_pair(1ULL << 19, "VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT"),
+    std::make_pair(1ULL << 41, "VK_ACCESS_2_RESERVED_41_BIT_AMD"),
     std::make_pair(1ULL << 39, "VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI"),
     std::make_pair(1ULL << 40, "VK_ACCESS_2_RESERVED_387_BIT_KHR"),
 };
-static void print_VkAccessFlagBits2KHR(VkAccessFlagBits2KHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkAccessFlagBits2KHR(VkAccessFlagBits2KHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -30240,7 +28350,7 @@ static void print_VkAccessFlagBits2KHR(VkAccessFlagBits2KHR obj, const std::stri
      else
          _OUT << "\"" << VkAccessFlagBits2KHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkAccessFlagBits2KHR(const VkAccessFlagBits2KHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkAccessFlagBits2KHR(const VkAccessFlagBits2KHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -30252,7 +28362,7 @@ static void print_VkAccessFlagBits2KHR(const VkAccessFlagBits2KHR * obj, const s
 static std::map<deUint64, std::string> VkSubmitFlagBitsKHR_map = {
     std::make_pair(1ULL << 0, "VK_SUBMIT_PROTECTED_BIT_KHR"),
 };
-static void print_VkSubmitFlagBitsKHR(VkSubmitFlagBitsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubmitFlagBitsKHR(VkSubmitFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -30260,7 +28370,7 @@ static void print_VkSubmitFlagBitsKHR(VkSubmitFlagBitsKHR obj, const std::string
      else
          _OUT << "\"" << VkSubmitFlagBitsKHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkSubmitFlagBitsKHR(const VkSubmitFlagBitsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubmitFlagBitsKHR(const VkSubmitFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -30269,14 +28379,14 @@ static void print_VkSubmitFlagBitsKHR(const VkSubmitFlagBitsKHR * obj, const std
          _OUT << "\"" << VkSubmitFlagBitsKHR_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkPipelineStageFlags2KHR(VkPipelineStageFlags2KHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineStageFlags2KHR(VkPipelineStageFlags2KHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineStageFlags2KHR(const VkPipelineStageFlags2KHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineStageFlags2KHR(const VkPipelineStageFlags2KHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -30284,14 +28394,14 @@ static void print_VkPipelineStageFlags2KHR(const VkPipelineStageFlags2KHR * obj,
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkAccessFlags2KHR(VkAccessFlags2KHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkAccessFlags2KHR(VkAccessFlags2KHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkAccessFlags2KHR(const VkAccessFlags2KHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkAccessFlags2KHR(const VkAccessFlags2KHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -30299,7 +28409,7 @@ static void print_VkAccessFlags2KHR(const VkAccessFlags2KHR * obj, const std::st
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkSubmitFlagsKHR(VkSubmitFlagsKHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubmitFlagsKHR(VkSubmitFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -30321,7 +28431,7 @@ static void print_VkSubmitFlagsKHR(VkSubmitFlagsKHR obj, const std::string& str,
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkSubmitFlagsKHR(const VkSubmitFlagsKHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSubmitFlagsKHR(const VkSubmitFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -30344,7 +28454,7 @@ static void print_VkSubmitFlagsKHR(const VkSubmitFlagsKHR * obj, const std::stri
      _OUT << std::endl;
 }
 
-static void print_VkMemoryBarrier2KHR(VkMemoryBarrier2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryBarrier2KHR(VkMemoryBarrier2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30373,7 +28483,7 @@ static void print_VkMemoryBarrier2KHR(VkMemoryBarrier2KHR obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryBarrier2KHR(const VkMemoryBarrier2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryBarrier2KHR(const VkMemoryBarrier2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30403,7 +28513,7 @@ static void print_VkMemoryBarrier2KHR(const VkMemoryBarrier2KHR * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBufferMemoryBarrier2KHR(VkBufferMemoryBarrier2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferMemoryBarrier2KHR(VkBufferMemoryBarrier2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30443,7 +28553,7 @@ static void print_VkBufferMemoryBarrier2KHR(VkBufferMemoryBarrier2KHR obj, const
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBufferMemoryBarrier2KHR(const VkBufferMemoryBarrier2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferMemoryBarrier2KHR(const VkBufferMemoryBarrier2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30484,7 +28594,7 @@ static void print_VkBufferMemoryBarrier2KHR(const VkBufferMemoryBarrier2KHR * ob
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageMemoryBarrier2KHR(VkImageMemoryBarrier2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageMemoryBarrier2KHR(VkImageMemoryBarrier2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30530,7 +28640,7 @@ static void print_VkImageMemoryBarrier2KHR(VkImageMemoryBarrier2KHR obj, const s
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageMemoryBarrier2KHR(const VkImageMemoryBarrier2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageMemoryBarrier2KHR(const VkImageMemoryBarrier2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30577,7 +28687,7 @@ static void print_VkImageMemoryBarrier2KHR(const VkImageMemoryBarrier2KHR * obj,
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDependencyInfoKHR(VkDependencyInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkDependencyInfoKHR(VkDependencyInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30663,7 +28773,7 @@ static void print_VkDependencyInfoKHR(VkDependencyInfoKHR obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDependencyInfoKHR(const VkDependencyInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDependencyInfoKHR(const VkDependencyInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30750,7 +28860,7 @@ static void print_VkDependencyInfoKHR(const VkDependencyInfoKHR * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSemaphoreSubmitInfoKHR(VkSemaphoreSubmitInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkSemaphoreSubmitInfoKHR(VkSemaphoreSubmitInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30780,7 +28890,7 @@ static void print_VkSemaphoreSubmitInfoKHR(VkSemaphoreSubmitInfoKHR obj, const s
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSemaphoreSubmitInfoKHR(const VkSemaphoreSubmitInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSemaphoreSubmitInfoKHR(const VkSemaphoreSubmitInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30811,7 +28921,7 @@ static void print_VkSemaphoreSubmitInfoKHR(const VkSemaphoreSubmitInfoKHR * obj,
          _OUT << "}" << std::endl;
 }
 
-static void print_VkCommandBufferSubmitInfoKHR(VkCommandBufferSubmitInfoKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandBufferSubmitInfoKHR(VkCommandBufferSubmitInfoKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30837,7 +28947,7 @@ static void print_VkCommandBufferSubmitInfoKHR(VkCommandBufferSubmitInfoKHR obj,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCommandBufferSubmitInfoKHR(const VkCommandBufferSubmitInfoKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCommandBufferSubmitInfoKHR(const VkCommandBufferSubmitInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30864,7 +28974,7 @@ static void print_VkCommandBufferSubmitInfoKHR(const VkCommandBufferSubmitInfoKH
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSubmitInfo2KHR(VkSubmitInfo2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubmitInfo2KHR(VkSubmitInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -30950,7 +29060,7 @@ static void print_VkSubmitInfo2KHR(VkSubmitInfo2KHR obj, const std::string& s, b
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSubmitInfo2KHR(const VkSubmitInfo2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubmitInfo2KHR(const VkSubmitInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31037,7 +29147,7 @@ static void print_VkSubmitInfo2KHR(const VkSubmitInfo2KHR * obj, const std::stri
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceSynchronization2FeaturesKHR(VkPhysicalDeviceSynchronization2FeaturesKHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSynchronization2FeaturesKHR(VkPhysicalDeviceSynchronization2FeaturesKHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31060,7 +29170,7 @@ static void print_VkPhysicalDeviceSynchronization2FeaturesKHR(VkPhysicalDeviceSy
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceSynchronization2FeaturesKHR(const VkPhysicalDeviceSynchronization2FeaturesKHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSynchronization2FeaturesKHR(const VkPhysicalDeviceSynchronization2FeaturesKHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31084,7 +29194,7 @@ static void print_VkPhysicalDeviceSynchronization2FeaturesKHR(const VkPhysicalDe
          _OUT << "}" << std::endl;
 }
 
-static void print_VkQueueFamilyCheckpointProperties2NV(VkQueueFamilyCheckpointProperties2NV obj, const std::string& s, bool commaNeeded) {
+static void print_VkQueueFamilyCheckpointProperties2NV(VkQueueFamilyCheckpointProperties2NV obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31107,7 +29217,7 @@ static void print_VkQueueFamilyCheckpointProperties2NV(VkQueueFamilyCheckpointPr
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkQueueFamilyCheckpointProperties2NV(const VkQueueFamilyCheckpointProperties2NV * obj, const std::string& s, bool commaNeeded) {
+static void print_VkQueueFamilyCheckpointProperties2NV(const VkQueueFamilyCheckpointProperties2NV * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31131,7 +29241,7 @@ static void print_VkQueueFamilyCheckpointProperties2NV(const VkQueueFamilyCheckp
          _OUT << "}" << std::endl;
 }
 
-static void print_VkCheckpointData2NV(VkCheckpointData2NV obj, const std::string& s, bool commaNeeded) {
+static void print_VkCheckpointData2NV(VkCheckpointData2NV obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31156,7 +29266,7 @@ static void print_VkCheckpointData2NV(VkCheckpointData2NV obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCheckpointData2NV(const VkCheckpointData2NV * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCheckpointData2NV(const VkCheckpointData2NV * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31182,7 +29292,7 @@ static void print_VkCheckpointData2NV(const VkCheckpointData2NV * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBufferCopy2KHR(VkBufferCopy2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferCopy2KHR(VkBufferCopy2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31209,7 +29319,7 @@ static void print_VkBufferCopy2KHR(VkBufferCopy2KHR obj, const std::string& s, b
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBufferCopy2KHR(const VkBufferCopy2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferCopy2KHR(const VkBufferCopy2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31237,7 +29347,7 @@ static void print_VkBufferCopy2KHR(const VkBufferCopy2KHR * obj, const std::stri
          _OUT << "}" << std::endl;
 }
 
-static void print_VkCopyBufferInfo2KHR(VkCopyBufferInfo2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkCopyBufferInfo2KHR(VkCopyBufferInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31285,7 +29395,7 @@ static void print_VkCopyBufferInfo2KHR(VkCopyBufferInfo2KHR obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCopyBufferInfo2KHR(const VkCopyBufferInfo2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCopyBufferInfo2KHR(const VkCopyBufferInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31334,7 +29444,7 @@ static void print_VkCopyBufferInfo2KHR(const VkCopyBufferInfo2KHR * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageCopy2KHR(VkImageCopy2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageCopy2KHR(VkImageCopy2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31385,7 +29495,7 @@ static void print_VkImageCopy2KHR(VkImageCopy2KHR obj, const std::string& s, boo
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageCopy2KHR(const VkImageCopy2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageCopy2KHR(const VkImageCopy2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31437,7 +29547,7 @@ static void print_VkImageCopy2KHR(const VkImageCopy2KHR * obj, const std::string
          _OUT << "}" << std::endl;
 }
 
-static void print_VkCopyImageInfo2KHR(VkCopyImageInfo2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkCopyImageInfo2KHR(VkCopyImageInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31489,7 +29599,7 @@ static void print_VkCopyImageInfo2KHR(VkCopyImageInfo2KHR obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCopyImageInfo2KHR(const VkCopyImageInfo2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCopyImageInfo2KHR(const VkCopyImageInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31542,7 +29652,7 @@ static void print_VkCopyImageInfo2KHR(const VkCopyImageInfo2KHR * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBufferImageCopy2KHR(VkBufferImageCopy2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferImageCopy2KHR(VkBufferImageCopy2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31587,7 +29697,7 @@ static void print_VkBufferImageCopy2KHR(VkBufferImageCopy2KHR obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBufferImageCopy2KHR(const VkBufferImageCopy2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBufferImageCopy2KHR(const VkBufferImageCopy2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31633,7 +29743,7 @@ static void print_VkBufferImageCopy2KHR(const VkBufferImageCopy2KHR * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkCopyBufferToImageInfo2KHR(VkCopyBufferToImageInfo2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkCopyBufferToImageInfo2KHR(VkCopyBufferToImageInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31683,7 +29793,7 @@ static void print_VkCopyBufferToImageInfo2KHR(VkCopyBufferToImageInfo2KHR obj, c
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCopyBufferToImageInfo2KHR(const VkCopyBufferToImageInfo2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCopyBufferToImageInfo2KHR(const VkCopyBufferToImageInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31734,7 +29844,7 @@ static void print_VkCopyBufferToImageInfo2KHR(const VkCopyBufferToImageInfo2KHR
          _OUT << "}" << std::endl;
 }
 
-static void print_VkCopyImageToBufferInfo2KHR(VkCopyImageToBufferInfo2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkCopyImageToBufferInfo2KHR(VkCopyImageToBufferInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31784,7 +29894,7 @@ static void print_VkCopyImageToBufferInfo2KHR(VkCopyImageToBufferInfo2KHR obj, c
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCopyImageToBufferInfo2KHR(const VkCopyImageToBufferInfo2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCopyImageToBufferInfo2KHR(const VkCopyImageToBufferInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31835,7 +29945,7 @@ static void print_VkCopyImageToBufferInfo2KHR(const VkCopyImageToBufferInfo2KHR
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageBlit2KHR(VkImageBlit2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageBlit2KHR(VkImageBlit2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31861,8 +29971,6 @@ static void print_VkImageBlit2KHR(VkImageBlit2KHR obj, const std::string& s, boo
      if (obj.srcOffsets) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "srcOffsets" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_VkOffset3D(obj.srcOffsets[i], "", isCommaNeeded);
        }
@@ -31884,8 +29992,6 @@ static void print_VkImageBlit2KHR(VkImageBlit2KHR obj, const std::string& s, boo
      if (obj.dstOffsets) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "dstOffsets" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_VkOffset3D(obj.dstOffsets[i], "", isCommaNeeded);
        }
@@ -31902,7 +30008,7 @@ static void print_VkImageBlit2KHR(VkImageBlit2KHR obj, const std::string& s, boo
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageBlit2KHR(const VkImageBlit2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageBlit2KHR(const VkImageBlit2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -31928,8 +30034,6 @@ static void print_VkImageBlit2KHR(const VkImageBlit2KHR * obj, const std::string
      if (obj->srcOffsets) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "srcOffsets" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_VkOffset3D(obj->srcOffsets[i], "", isCommaNeeded);
        }
@@ -31951,8 +30055,6 @@ static void print_VkImageBlit2KHR(const VkImageBlit2KHR * obj, const std::string
      if (obj->dstOffsets) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "dstOffsets" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_VkOffset3D(obj->dstOffsets[i], "", isCommaNeeded);
        }
@@ -31970,7 +30072,7 @@ static void print_VkImageBlit2KHR(const VkImageBlit2KHR * obj, const std::string
          _OUT << "}" << std::endl;
 }
 
-static void print_VkBlitImageInfo2KHR(VkBlitImageInfo2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkBlitImageInfo2KHR(VkBlitImageInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32024,7 +30126,7 @@ static void print_VkBlitImageInfo2KHR(VkBlitImageInfo2KHR obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkBlitImageInfo2KHR(const VkBlitImageInfo2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkBlitImageInfo2KHR(const VkBlitImageInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32079,7 +30181,7 @@ static void print_VkBlitImageInfo2KHR(const VkBlitImageInfo2KHR * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageResolve2KHR(VkImageResolve2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageResolve2KHR(VkImageResolve2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32130,7 +30232,7 @@ static void print_VkImageResolve2KHR(VkImageResolve2KHR obj, const std::string&
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageResolve2KHR(const VkImageResolve2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageResolve2KHR(const VkImageResolve2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32182,7 +30284,7 @@ static void print_VkImageResolve2KHR(const VkImageResolve2KHR * obj, const std::
          _OUT << "}" << std::endl;
 }
 
-static void print_VkResolveImageInfo2KHR(VkResolveImageInfo2KHR obj, const std::string& s, bool commaNeeded) {
+static void print_VkResolveImageInfo2KHR(VkResolveImageInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32234,7 +30336,7 @@ static void print_VkResolveImageInfo2KHR(VkResolveImageInfo2KHR obj, const std::
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkResolveImageInfo2KHR(const VkResolveImageInfo2KHR * obj, const std::string& s, bool commaNeeded) {
+static void print_VkResolveImageInfo2KHR(const VkResolveImageInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32287,7 +30389,7 @@ static void print_VkResolveImageInfo2KHR(const VkResolveImageInfo2KHR * obj, con
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32310,7 +30412,7 @@ static void print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(VkPhysica
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(const VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(const VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32334,7 +30436,7 @@ static void print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(const VkP
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageViewASTCDecodeModeEXT(VkImageViewASTCDecodeModeEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageViewASTCDecodeModeEXT(VkImageViewASTCDecodeModeEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32357,7 +30459,7 @@ static void print_VkImageViewASTCDecodeModeEXT(VkImageViewASTCDecodeModeEXT obj,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageViewASTCDecodeModeEXT(const VkImageViewASTCDecodeModeEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageViewASTCDecodeModeEXT(const VkImageViewASTCDecodeModeEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32381,7 +30483,7 @@ static void print_VkImageViewASTCDecodeModeEXT(const VkImageViewASTCDecodeModeEX
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceASTCDecodeFeaturesEXT(VkPhysicalDeviceASTCDecodeFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceASTCDecodeFeaturesEXT(VkPhysicalDeviceASTCDecodeFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32404,7 +30506,7 @@ static void print_VkPhysicalDeviceASTCDecodeFeaturesEXT(VkPhysicalDeviceASTCDeco
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceASTCDecodeFeaturesEXT(const VkPhysicalDeviceASTCDecodeFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceASTCDecodeFeaturesEXT(const VkPhysicalDeviceASTCDecodeFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32431,7 +30533,7 @@ static void print_VkPhysicalDeviceASTCDecodeFeaturesEXT(const VkPhysicalDeviceAS
 static std::map<deUint64, std::string> VkSurfaceCounterFlagBitsEXT_map = {
     std::make_pair(1ULL << 0, "VK_SURFACE_COUNTER_VBLANK_BIT_EXT"),
 };
-static void print_VkSurfaceCounterFlagBitsEXT(VkSurfaceCounterFlagBitsEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkSurfaceCounterFlagBitsEXT(VkSurfaceCounterFlagBitsEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -32439,7 +30541,7 @@ static void print_VkSurfaceCounterFlagBitsEXT(VkSurfaceCounterFlagBitsEXT obj, c
      else
          _OUT << "\"" << VkSurfaceCounterFlagBitsEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkSurfaceCounterFlagBitsEXT(const VkSurfaceCounterFlagBitsEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSurfaceCounterFlagBitsEXT(const VkSurfaceCounterFlagBitsEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -32448,7 +30550,7 @@ static void print_VkSurfaceCounterFlagBitsEXT(const VkSurfaceCounterFlagBitsEXT
          _OUT << "\"" << VkSurfaceCounterFlagBitsEXT_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkSurfaceCounterFlagsEXT(VkSurfaceCounterFlagsEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkSurfaceCounterFlagsEXT(VkSurfaceCounterFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -32470,7 +30572,7 @@ static void print_VkSurfaceCounterFlagsEXT(VkSurfaceCounterFlagsEXT obj, const s
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkSurfaceCounterFlagsEXT(const VkSurfaceCounterFlagsEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkSurfaceCounterFlagsEXT(const VkSurfaceCounterFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -32493,7 +30595,7 @@ static void print_VkSurfaceCounterFlagsEXT(const VkSurfaceCounterFlagsEXT * obj,
      _OUT << std::endl;
 }
 
-static void print_VkSurfaceCapabilities2EXT(VkSurfaceCapabilities2EXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkSurfaceCapabilities2EXT(VkSurfaceCapabilities2EXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32548,7 +30650,7 @@ static void print_VkSurfaceCapabilities2EXT(VkSurfaceCapabilities2EXT obj, const
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSurfaceCapabilities2EXT(const VkSurfaceCapabilities2EXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSurfaceCapabilities2EXT(const VkSurfaceCapabilities2EXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32609,7 +30711,7 @@ static std::map<deUint64, std::string> VkDisplayPowerStateEXT_map = {
     std::make_pair(1, "VK_DISPLAY_POWER_STATE_SUSPEND_EXT"),
     std::make_pair(2, "VK_DISPLAY_POWER_STATE_ON_EXT"),
 };
-static void print_VkDisplayPowerStateEXT(VkDisplayPowerStateEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayPowerStateEXT(VkDisplayPowerStateEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -32617,7 +30719,7 @@ static void print_VkDisplayPowerStateEXT(VkDisplayPowerStateEXT obj, const std::
      else
          _OUT << "\"" << VkDisplayPowerStateEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkDisplayPowerStateEXT(const VkDisplayPowerStateEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayPowerStateEXT(const VkDisplayPowerStateEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -32629,7 +30731,7 @@ static void print_VkDisplayPowerStateEXT(const VkDisplayPowerStateEXT * obj, con
 static std::map<deUint64, std::string> VkDeviceEventTypeEXT_map = {
     std::make_pair(0, "VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT"),
 };
-static void print_VkDeviceEventTypeEXT(VkDeviceEventTypeEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceEventTypeEXT(VkDeviceEventTypeEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -32637,7 +30739,7 @@ static void print_VkDeviceEventTypeEXT(VkDeviceEventTypeEXT obj, const std::stri
      else
          _OUT << "\"" << VkDeviceEventTypeEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkDeviceEventTypeEXT(const VkDeviceEventTypeEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDeviceEventTypeEXT(const VkDeviceEventTypeEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -32649,7 +30751,7 @@ static void print_VkDeviceEventTypeEXT(const VkDeviceEventTypeEXT * obj, const s
 static std::map<deUint64, std::string> VkDisplayEventTypeEXT_map = {
     std::make_pair(0, "VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT"),
 };
-static void print_VkDisplayEventTypeEXT(VkDisplayEventTypeEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayEventTypeEXT(VkDisplayEventTypeEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -32657,7 +30759,7 @@ static void print_VkDisplayEventTypeEXT(VkDisplayEventTypeEXT obj, const std::st
      else
          _OUT << "\"" << VkDisplayEventTypeEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkDisplayEventTypeEXT(const VkDisplayEventTypeEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDisplayEventTypeEXT(const VkDisplayEventTypeEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -32666,7 +30768,7 @@ static void print_VkDisplayEventTypeEXT(const VkDisplayEventTypeEXT * obj, const
          _OUT << "\"" << VkDisplayEventTypeEXT_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkDisplayPowerInfoEXT(VkDisplayPowerInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPowerInfoEXT(VkDisplayPowerInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32689,7 +30791,7 @@ static void print_VkDisplayPowerInfoEXT(VkDisplayPowerInfoEXT obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayPowerInfoEXT(const VkDisplayPowerInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayPowerInfoEXT(const VkDisplayPowerInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32713,7 +30815,7 @@ static void print_VkDisplayPowerInfoEXT(const VkDisplayPowerInfoEXT * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDeviceEventInfoEXT(VkDeviceEventInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceEventInfoEXT(VkDeviceEventInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32736,7 +30838,7 @@ static void print_VkDeviceEventInfoEXT(VkDeviceEventInfoEXT obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceEventInfoEXT(const VkDeviceEventInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceEventInfoEXT(const VkDeviceEventInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32760,7 +30862,7 @@ static void print_VkDeviceEventInfoEXT(const VkDeviceEventInfoEXT * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDisplayEventInfoEXT(VkDisplayEventInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayEventInfoEXT(VkDisplayEventInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32783,7 +30885,7 @@ static void print_VkDisplayEventInfoEXT(VkDisplayEventInfoEXT obj, const std::st
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDisplayEventInfoEXT(const VkDisplayEventInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDisplayEventInfoEXT(const VkDisplayEventInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32807,7 +30909,7 @@ static void print_VkDisplayEventInfoEXT(const VkDisplayEventInfoEXT * obj, const
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSwapchainCounterCreateInfoEXT(VkSwapchainCounterCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkSwapchainCounterCreateInfoEXT(VkSwapchainCounterCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32830,7 +30932,7 @@ static void print_VkSwapchainCounterCreateInfoEXT(VkSwapchainCounterCreateInfoEX
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSwapchainCounterCreateInfoEXT(const VkSwapchainCounterCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSwapchainCounterCreateInfoEXT(const VkSwapchainCounterCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32858,7 +30960,7 @@ static std::map<deUint64, std::string> VkDiscardRectangleModeEXT_map = {
     std::make_pair(0, "VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT"),
     std::make_pair(1, "VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT"),
 };
-static void print_VkDiscardRectangleModeEXT(VkDiscardRectangleModeEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkDiscardRectangleModeEXT(VkDiscardRectangleModeEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -32866,7 +30968,7 @@ static void print_VkDiscardRectangleModeEXT(VkDiscardRectangleModeEXT obj, const
      else
          _OUT << "\"" << VkDiscardRectangleModeEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkDiscardRectangleModeEXT(const VkDiscardRectangleModeEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDiscardRectangleModeEXT(const VkDiscardRectangleModeEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -32875,14 +30977,14 @@ static void print_VkDiscardRectangleModeEXT(const VkDiscardRectangleModeEXT * ob
          _OUT << "\"" << VkDiscardRectangleModeEXT_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkPipelineDiscardRectangleStateCreateFlagsEXT(VkPipelineDiscardRectangleStateCreateFlagsEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineDiscardRectangleStateCreateFlagsEXT(VkPipelineDiscardRectangleStateCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineDiscardRectangleStateCreateFlagsEXT(const VkPipelineDiscardRectangleStateCreateFlagsEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineDiscardRectangleStateCreateFlagsEXT(const VkPipelineDiscardRectangleStateCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -32890,7 +30992,7 @@ static void print_VkPipelineDiscardRectangleStateCreateFlagsEXT(const VkPipeline
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkPhysicalDeviceDiscardRectanglePropertiesEXT(VkPhysicalDeviceDiscardRectanglePropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceDiscardRectanglePropertiesEXT(VkPhysicalDeviceDiscardRectanglePropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32913,7 +31015,7 @@ static void print_VkPhysicalDeviceDiscardRectanglePropertiesEXT(VkPhysicalDevice
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceDiscardRectanglePropertiesEXT(const VkPhysicalDeviceDiscardRectanglePropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceDiscardRectanglePropertiesEXT(const VkPhysicalDeviceDiscardRectanglePropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32937,7 +31039,7 @@ static void print_VkPhysicalDeviceDiscardRectanglePropertiesEXT(const VkPhysical
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineDiscardRectangleStateCreateInfoEXT(VkPipelineDiscardRectangleStateCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineDiscardRectangleStateCreateInfoEXT(VkPipelineDiscardRectangleStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -32983,7 +31085,7 @@ static void print_VkPipelineDiscardRectangleStateCreateInfoEXT(VkPipelineDiscard
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineDiscardRectangleStateCreateInfoEXT(const VkPipelineDiscardRectangleStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineDiscardRectangleStateCreateInfoEXT(const VkPipelineDiscardRectangleStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33035,7 +31137,7 @@ static std::map<deUint64, std::string> VkConservativeRasterizationModeEXT_map =
     std::make_pair(1, "VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT"),
     std::make_pair(2, "VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT"),
 };
-static void print_VkConservativeRasterizationModeEXT(VkConservativeRasterizationModeEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkConservativeRasterizationModeEXT(VkConservativeRasterizationModeEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -33043,7 +31145,7 @@ static void print_VkConservativeRasterizationModeEXT(VkConservativeRasterization
      else
          _OUT << "\"" << VkConservativeRasterizationModeEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkConservativeRasterizationModeEXT(const VkConservativeRasterizationModeEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkConservativeRasterizationModeEXT(const VkConservativeRasterizationModeEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -33052,14 +31154,14 @@ static void print_VkConservativeRasterizationModeEXT(const VkConservativeRasteri
          _OUT << "\"" << VkConservativeRasterizationModeEXT_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkPipelineRasterizationConservativeStateCreateFlagsEXT(VkPipelineRasterizationConservativeStateCreateFlagsEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineRasterizationConservativeStateCreateFlagsEXT(VkPipelineRasterizationConservativeStateCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineRasterizationConservativeStateCreateFlagsEXT(const VkPipelineRasterizationConservativeStateCreateFlagsEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineRasterizationConservativeStateCreateFlagsEXT(const VkPipelineRasterizationConservativeStateCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -33067,7 +31169,7 @@ static void print_VkPipelineRasterizationConservativeStateCreateFlagsEXT(const V
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(VkPhysicalDeviceConservativeRasterizationPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(VkPhysicalDeviceConservativeRasterizationPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33106,7 +31208,7 @@ static void print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(VkPhysi
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(const VkPhysicalDeviceConservativeRasterizationPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(const VkPhysicalDeviceConservativeRasterizationPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33146,7 +31248,7 @@ static void print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(const V
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineRasterizationConservativeStateCreateInfoEXT(VkPipelineRasterizationConservativeStateCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineRasterizationConservativeStateCreateInfoEXT(VkPipelineRasterizationConservativeStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33173,7 +31275,7 @@ static void print_VkPipelineRasterizationConservativeStateCreateInfoEXT(VkPipeli
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineRasterizationConservativeStateCreateInfoEXT(const VkPipelineRasterizationConservativeStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineRasterizationConservativeStateCreateInfoEXT(const VkPipelineRasterizationConservativeStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33201,14 +31303,14 @@ static void print_VkPipelineRasterizationConservativeStateCreateInfoEXT(const Vk
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineRasterizationDepthClipStateCreateFlagsEXT(VkPipelineRasterizationDepthClipStateCreateFlagsEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineRasterizationDepthClipStateCreateFlagsEXT(VkPipelineRasterizationDepthClipStateCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkPipelineRasterizationDepthClipStateCreateFlagsEXT(const VkPipelineRasterizationDepthClipStateCreateFlagsEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkPipelineRasterizationDepthClipStateCreateFlagsEXT(const VkPipelineRasterizationDepthClipStateCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -33216,7 +31318,7 @@ static void print_VkPipelineRasterizationDepthClipStateCreateFlagsEXT(const VkPi
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkPhysicalDeviceDepthClipEnableFeaturesEXT(VkPhysicalDeviceDepthClipEnableFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceDepthClipEnableFeaturesEXT(VkPhysicalDeviceDepthClipEnableFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33239,7 +31341,7 @@ static void print_VkPhysicalDeviceDepthClipEnableFeaturesEXT(VkPhysicalDeviceDep
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceDepthClipEnableFeaturesEXT(const VkPhysicalDeviceDepthClipEnableFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceDepthClipEnableFeaturesEXT(const VkPhysicalDeviceDepthClipEnableFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33263,7 +31365,7 @@ static void print_VkPhysicalDeviceDepthClipEnableFeaturesEXT(const VkPhysicalDev
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineRasterizationDepthClipStateCreateInfoEXT(VkPipelineRasterizationDepthClipStateCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineRasterizationDepthClipStateCreateInfoEXT(VkPipelineRasterizationDepthClipStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33288,7 +31390,7 @@ static void print_VkPipelineRasterizationDepthClipStateCreateInfoEXT(VkPipelineR
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineRasterizationDepthClipStateCreateInfoEXT(const VkPipelineRasterizationDepthClipStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineRasterizationDepthClipStateCreateInfoEXT(const VkPipelineRasterizationDepthClipStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33314,7 +31416,7 @@ static void print_VkPipelineRasterizationDepthClipStateCreateInfoEXT(const VkPip
          _OUT << "}" << std::endl;
 }
 
-static void print_VkXYColorEXT(VkXYColorEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkXYColorEXT(VkXYColorEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33330,7 +31432,7 @@ static void print_VkXYColorEXT(VkXYColorEXT obj, const std::string& s, bool comm
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkXYColorEXT(const VkXYColorEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkXYColorEXT(const VkXYColorEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33347,7 +31449,7 @@ static void print_VkXYColorEXT(const VkXYColorEXT * obj, const std::string& s, b
          _OUT << "}" << std::endl;
 }
 
-static void print_VkHdrMetadataEXT(VkHdrMetadataEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkHdrMetadataEXT(VkHdrMetadataEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33400,7 +31502,7 @@ static void print_VkHdrMetadataEXT(VkHdrMetadataEXT obj, const std::string& s, b
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkHdrMetadataEXT(const VkHdrMetadataEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkHdrMetadataEXT(const VkHdrMetadataEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33454,14 +31556,14 @@ static void print_VkHdrMetadataEXT(const VkHdrMetadataEXT * obj, const std::stri
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDebugUtilsMessengerEXT(VkDebugUtilsMessengerEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessengerEXT(VkDebugUtilsMessengerEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << std::endl;
 }
-static void print_VkDebugUtilsMessengerEXT(const VkDebugUtilsMessengerEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessengerEXT(const VkDebugUtilsMessengerEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << "," << std::endl;
@@ -33475,7 +31577,7 @@ static std::map<deUint64, std::string> VkDebugUtilsMessageSeverityFlagBitsEXT_ma
     std::make_pair(1ULL << 8, "VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT"),
     std::make_pair(1ULL << 12, "VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT"),
 };
-static void print_VkDebugUtilsMessageSeverityFlagBitsEXT(VkDebugUtilsMessageSeverityFlagBitsEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessageSeverityFlagBitsEXT(VkDebugUtilsMessageSeverityFlagBitsEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -33483,7 +31585,7 @@ static void print_VkDebugUtilsMessageSeverityFlagBitsEXT(VkDebugUtilsMessageSeve
      else
          _OUT << "\"" << VkDebugUtilsMessageSeverityFlagBitsEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkDebugUtilsMessageSeverityFlagBitsEXT(const VkDebugUtilsMessageSeverityFlagBitsEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessageSeverityFlagBitsEXT(const VkDebugUtilsMessageSeverityFlagBitsEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -33497,7 +31599,7 @@ static std::map<deUint64, std::string> VkDebugUtilsMessageTypeFlagBitsEXT_map =
     std::make_pair(1ULL << 1, "VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT"),
     std::make_pair(1ULL << 2, "VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT"),
 };
-static void print_VkDebugUtilsMessageTypeFlagBitsEXT(VkDebugUtilsMessageTypeFlagBitsEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessageTypeFlagBitsEXT(VkDebugUtilsMessageTypeFlagBitsEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -33505,7 +31607,7 @@ static void print_VkDebugUtilsMessageTypeFlagBitsEXT(VkDebugUtilsMessageTypeFlag
      else
          _OUT << "\"" << VkDebugUtilsMessageTypeFlagBitsEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkDebugUtilsMessageTypeFlagBitsEXT(const VkDebugUtilsMessageTypeFlagBitsEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessageTypeFlagBitsEXT(const VkDebugUtilsMessageTypeFlagBitsEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -33514,14 +31616,14 @@ static void print_VkDebugUtilsMessageTypeFlagBitsEXT(const VkDebugUtilsMessageTy
          _OUT << "\"" << VkDebugUtilsMessageTypeFlagBitsEXT_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkDebugUtilsMessengerCallbackDataFlagsEXT(VkDebugUtilsMessengerCallbackDataFlagsEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessengerCallbackDataFlagsEXT(VkDebugUtilsMessengerCallbackDataFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkDebugUtilsMessengerCallbackDataFlagsEXT(const VkDebugUtilsMessengerCallbackDataFlagsEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessengerCallbackDataFlagsEXT(const VkDebugUtilsMessengerCallbackDataFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -33529,7 +31631,7 @@ static void print_VkDebugUtilsMessengerCallbackDataFlagsEXT(const VkDebugUtilsMe
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkDebugUtilsMessageTypeFlagsEXT(VkDebugUtilsMessageTypeFlagsEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessageTypeFlagsEXT(VkDebugUtilsMessageTypeFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -33551,7 +31653,7 @@ static void print_VkDebugUtilsMessageTypeFlagsEXT(VkDebugUtilsMessageTypeFlagsEX
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkDebugUtilsMessageTypeFlagsEXT(const VkDebugUtilsMessageTypeFlagsEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessageTypeFlagsEXT(const VkDebugUtilsMessageTypeFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -33574,7 +31676,7 @@ static void print_VkDebugUtilsMessageTypeFlagsEXT(const VkDebugUtilsMessageTypeF
      _OUT << std::endl;
 }
 
-static void print_VkDebugUtilsMessageSeverityFlagsEXT(VkDebugUtilsMessageSeverityFlagsEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessageSeverityFlagsEXT(VkDebugUtilsMessageSeverityFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -33596,7 +31698,7 @@ static void print_VkDebugUtilsMessageSeverityFlagsEXT(VkDebugUtilsMessageSeverit
        _OUT << "\""<< "";
      _OUT << std::endl;
 }
-static void print_VkDebugUtilsMessageSeverityFlagsEXT(const VkDebugUtilsMessageSeverityFlagsEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessageSeverityFlagsEXT(const VkDebugUtilsMessageSeverityFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      const int max_bits = 64; // We don't expect the number to be larger.
@@ -33619,14 +31721,14 @@ static void print_VkDebugUtilsMessageSeverityFlagsEXT(const VkDebugUtilsMessageS
      _OUT << std::endl;
 }
 
-static void print_VkDebugUtilsMessengerCreateFlagsEXT(VkDebugUtilsMessengerCreateFlagsEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessengerCreateFlagsEXT(VkDebugUtilsMessengerCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkDebugUtilsMessengerCreateFlagsEXT(const VkDebugUtilsMessengerCreateFlagsEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkDebugUtilsMessengerCreateFlagsEXT(const VkDebugUtilsMessengerCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -33634,7 +31736,7 @@ static void print_VkDebugUtilsMessengerCreateFlagsEXT(const VkDebugUtilsMessenge
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkDebugUtilsLabelEXT(VkDebugUtilsLabelEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkDebugUtilsLabelEXT(VkDebugUtilsLabelEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33656,8 +31758,6 @@ static void print_VkDebugUtilsLabelEXT(VkDebugUtilsLabelEXT obj, const std::stri
      if (obj.color) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 4; i++) {
-           std:: stringstream tmp;
-           tmp << "color" << "_" << i;
            bool isCommaNeeded = (i+1) != 4;
            print_float(obj.color[i], "", isCommaNeeded);
        }
@@ -33674,7 +31774,7 @@ static void print_VkDebugUtilsLabelEXT(VkDebugUtilsLabelEXT obj, const std::stri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDebugUtilsLabelEXT(const VkDebugUtilsLabelEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDebugUtilsLabelEXT(const VkDebugUtilsLabelEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33696,8 +31796,6 @@ static void print_VkDebugUtilsLabelEXT(const VkDebugUtilsLabelEXT * obj, const s
      if (obj->color) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 4; i++) {
-           std:: stringstream tmp;
-           tmp << "color" << "_" << i;
            bool isCommaNeeded = (i+1) != 4;
            print_float(obj->color[i], "", isCommaNeeded);
        }
@@ -33715,7 +31813,7 @@ static void print_VkDebugUtilsLabelEXT(const VkDebugUtilsLabelEXT * obj, const s
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDebugUtilsObjectNameInfoEXT(VkDebugUtilsObjectNameInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkDebugUtilsObjectNameInfoEXT(VkDebugUtilsObjectNameInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33742,7 +31840,7 @@ static void print_VkDebugUtilsObjectNameInfoEXT(VkDebugUtilsObjectNameInfoEXT ob
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDebugUtilsObjectNameInfoEXT(const VkDebugUtilsObjectNameInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDebugUtilsObjectNameInfoEXT(const VkDebugUtilsObjectNameInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33770,7 +31868,7 @@ static void print_VkDebugUtilsObjectNameInfoEXT(const VkDebugUtilsObjectNameInfo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDebugUtilsMessengerCallbackDataEXT(VkDebugUtilsMessengerCallbackDataEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkDebugUtilsMessengerCallbackDataEXT(VkDebugUtilsMessengerCallbackDataEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33862,7 +31960,7 @@ static void print_VkDebugUtilsMessengerCallbackDataEXT(VkDebugUtilsMessengerCall
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDebugUtilsMessengerCallbackDataEXT(const VkDebugUtilsMessengerCallbackDataEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDebugUtilsMessengerCallbackDataEXT(const VkDebugUtilsMessengerCallbackDataEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33955,7 +32053,7 @@ static void print_VkDebugUtilsMessengerCallbackDataEXT(const VkDebugUtilsMesseng
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDebugUtilsMessengerCreateInfoEXT(VkDebugUtilsMessengerCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkDebugUtilsMessengerCreateInfoEXT(VkDebugUtilsMessengerCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -33986,7 +32084,7 @@ static void print_VkDebugUtilsMessengerCreateInfoEXT(VkDebugUtilsMessengerCreate
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDebugUtilsMessengerCreateInfoEXT(const VkDebugUtilsMessengerCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDebugUtilsMessengerCreateInfoEXT(const VkDebugUtilsMessengerCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34018,7 +32116,7 @@ static void print_VkDebugUtilsMessengerCreateInfoEXT(const VkDebugUtilsMessenger
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDebugUtilsObjectTagInfoEXT(VkDebugUtilsObjectTagInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkDebugUtilsObjectTagInfoEXT(VkDebugUtilsObjectTagInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34049,7 +32147,7 @@ static void print_VkDebugUtilsObjectTagInfoEXT(VkDebugUtilsObjectTagInfoEXT obj,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDebugUtilsObjectTagInfoEXT(const VkDebugUtilsObjectTagInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDebugUtilsObjectTagInfoEXT(const VkDebugUtilsObjectTagInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34081,7 +32179,7 @@ static void print_VkDebugUtilsObjectTagInfoEXT(const VkDebugUtilsObjectTagInfoEX
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSampleLocationEXT(VkSampleLocationEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkSampleLocationEXT(VkSampleLocationEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34097,7 +32195,7 @@ static void print_VkSampleLocationEXT(VkSampleLocationEXT obj, const std::string
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSampleLocationEXT(const VkSampleLocationEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSampleLocationEXT(const VkSampleLocationEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34114,7 +32212,7 @@ static void print_VkSampleLocationEXT(const VkSampleLocationEXT * obj, const std
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSampleLocationsInfoEXT(VkSampleLocationsInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkSampleLocationsInfoEXT(VkSampleLocationsInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34164,7 +32262,7 @@ static void print_VkSampleLocationsInfoEXT(VkSampleLocationsInfoEXT obj, const s
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSampleLocationsInfoEXT(const VkSampleLocationsInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSampleLocationsInfoEXT(const VkSampleLocationsInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34215,7 +32313,7 @@ static void print_VkSampleLocationsInfoEXT(const VkSampleLocationsInfoEXT * obj,
          _OUT << "}" << std::endl;
 }
 
-static void print_VkAttachmentSampleLocationsEXT(VkAttachmentSampleLocationsEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentSampleLocationsEXT(VkAttachmentSampleLocationsEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34235,7 +32333,7 @@ static void print_VkAttachmentSampleLocationsEXT(VkAttachmentSampleLocationsEXT
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkAttachmentSampleLocationsEXT(const VkAttachmentSampleLocationsEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkAttachmentSampleLocationsEXT(const VkAttachmentSampleLocationsEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34256,7 +32354,7 @@ static void print_VkAttachmentSampleLocationsEXT(const VkAttachmentSampleLocatio
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSubpassSampleLocationsEXT(VkSubpassSampleLocationsEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassSampleLocationsEXT(VkSubpassSampleLocationsEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34276,7 +32374,7 @@ static void print_VkSubpassSampleLocationsEXT(VkSubpassSampleLocationsEXT obj, c
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSubpassSampleLocationsEXT(const VkSubpassSampleLocationsEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSubpassSampleLocationsEXT(const VkSubpassSampleLocationsEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34297,7 +32395,7 @@ static void print_VkSubpassSampleLocationsEXT(const VkSubpassSampleLocationsEXT
          _OUT << "}" << std::endl;
 }
 
-static void print_VkRenderPassSampleLocationsBeginInfoEXT(VkRenderPassSampleLocationsBeginInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassSampleLocationsBeginInfoEXT(VkRenderPassSampleLocationsBeginInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34360,7 +32458,7 @@ static void print_VkRenderPassSampleLocationsBeginInfoEXT(VkRenderPassSampleLoca
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkRenderPassSampleLocationsBeginInfoEXT(const VkRenderPassSampleLocationsBeginInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkRenderPassSampleLocationsBeginInfoEXT(const VkRenderPassSampleLocationsBeginInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34424,7 +32522,7 @@ static void print_VkRenderPassSampleLocationsBeginInfoEXT(const VkRenderPassSamp
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineSampleLocationsStateCreateInfoEXT(VkPipelineSampleLocationsStateCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineSampleLocationsStateCreateInfoEXT(VkPipelineSampleLocationsStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34453,7 +32551,7 @@ static void print_VkPipelineSampleLocationsStateCreateInfoEXT(VkPipelineSampleLo
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineSampleLocationsStateCreateInfoEXT(const VkPipelineSampleLocationsStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineSampleLocationsStateCreateInfoEXT(const VkPipelineSampleLocationsStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34483,7 +32581,7 @@ static void print_VkPipelineSampleLocationsStateCreateInfoEXT(const VkPipelineSa
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceSampleLocationsPropertiesEXT(VkPhysicalDeviceSampleLocationsPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSampleLocationsPropertiesEXT(VkPhysicalDeviceSampleLocationsPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34511,8 +32609,6 @@ static void print_VkPhysicalDeviceSampleLocationsPropertiesEXT(VkPhysicalDeviceS
      if (obj.sampleLocationCoordinateRange) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "sampleLocationCoordinateRange" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_float(obj.sampleLocationCoordinateRange[i], "", isCommaNeeded);
        }
@@ -34533,7 +32629,7 @@ static void print_VkPhysicalDeviceSampleLocationsPropertiesEXT(VkPhysicalDeviceS
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceSampleLocationsPropertiesEXT(const VkPhysicalDeviceSampleLocationsPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSampleLocationsPropertiesEXT(const VkPhysicalDeviceSampleLocationsPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34561,8 +32657,6 @@ static void print_VkPhysicalDeviceSampleLocationsPropertiesEXT(const VkPhysicalD
      if (obj->sampleLocationCoordinateRange) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < 2; i++) {
-           std:: stringstream tmp;
-           tmp << "sampleLocationCoordinateRange" << "_" << i;
            bool isCommaNeeded = (i+1) != 2;
            print_float(obj->sampleLocationCoordinateRange[i], "", isCommaNeeded);
        }
@@ -34584,7 +32678,7 @@ static void print_VkPhysicalDeviceSampleLocationsPropertiesEXT(const VkPhysicalD
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMultisamplePropertiesEXT(VkMultisamplePropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkMultisamplePropertiesEXT(VkMultisamplePropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34611,7 +32705,7 @@ static void print_VkMultisamplePropertiesEXT(VkMultisamplePropertiesEXT obj, con
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMultisamplePropertiesEXT(const VkMultisamplePropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMultisamplePropertiesEXT(const VkMultisamplePropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34644,7 +32738,7 @@ static std::map<deUint64, std::string> VkBlendOverlapEXT_map = {
     std::make_pair(1, "VK_BLEND_OVERLAP_DISJOINT_EXT"),
     std::make_pair(2, "VK_BLEND_OVERLAP_CONJOINT_EXT"),
 };
-static void print_VkBlendOverlapEXT(VkBlendOverlapEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkBlendOverlapEXT(VkBlendOverlapEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -34652,7 +32746,7 @@ static void print_VkBlendOverlapEXT(VkBlendOverlapEXT obj, const std::string& st
      else
          _OUT << "\"" << VkBlendOverlapEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkBlendOverlapEXT(const VkBlendOverlapEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkBlendOverlapEXT(const VkBlendOverlapEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -34661,7 +32755,7 @@ static void print_VkBlendOverlapEXT(const VkBlendOverlapEXT * obj, const std::st
          _OUT << "\"" << VkBlendOverlapEXT_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34684,7 +32778,7 @@ static void print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(VkPhysicalDe
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34708,7 +32802,7 @@ static void print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(const VkPhys
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34741,7 +32835,7 @@ static void print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(VkPhysical
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34775,7 +32869,7 @@ static void print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(const VkPh
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineColorBlendAdvancedStateCreateInfoEXT(VkPipelineColorBlendAdvancedStateCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineColorBlendAdvancedStateCreateInfoEXT(VkPipelineColorBlendAdvancedStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34802,7 +32896,7 @@ static void print_VkPipelineColorBlendAdvancedStateCreateInfoEXT(VkPipelineColor
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineColorBlendAdvancedStateCreateInfoEXT(const VkPipelineColorBlendAdvancedStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineColorBlendAdvancedStateCreateInfoEXT(const VkPipelineColorBlendAdvancedStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34866,7 +32960,7 @@ static std::map<deUint64, std::string> VkFormatFeatureFlagBits2KHR_map = {
     std::make_pair(1ULL << 27, "VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR"),
     std::make_pair(1ULL << 28, "VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR"),
 };
-static void print_VkFormatFeatureFlagBits2KHR(VkFormatFeatureFlagBits2KHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkFormatFeatureFlagBits2KHR(VkFormatFeatureFlagBits2KHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -34874,7 +32968,7 @@ static void print_VkFormatFeatureFlagBits2KHR(VkFormatFeatureFlagBits2KHR obj, c
      else
          _OUT << "\"" << VkFormatFeatureFlagBits2KHR_map[obj] << "\"" << std::endl;
 }
-static void print_VkFormatFeatureFlagBits2KHR(const VkFormatFeatureFlagBits2KHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFormatFeatureFlagBits2KHR(const VkFormatFeatureFlagBits2KHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -34883,14 +32977,14 @@ static void print_VkFormatFeatureFlagBits2KHR(const VkFormatFeatureFlagBits2KHR
          _OUT << "\"" << VkFormatFeatureFlagBits2KHR_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkFormatFeatureFlags2KHR(VkFormatFeatureFlags2KHR obj, const std::string& str, bool commaNeeded) {
+static void print_VkFormatFeatureFlags2KHR(VkFormatFeatureFlags2KHR obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkFormatFeatureFlags2KHR(const VkFormatFeatureFlags2KHR * obj, const std::string& str, bool commaNeeded) {
+static void print_VkFormatFeatureFlags2KHR(const VkFormatFeatureFlags2KHR * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -34898,7 +32992,7 @@ static void print_VkFormatFeatureFlags2KHR(const VkFormatFeatureFlags2KHR * obj,
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkDrmFormatModifierPropertiesEXT(VkDrmFormatModifierPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkDrmFormatModifierPropertiesEXT(VkDrmFormatModifierPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34916,7 +33010,7 @@ static void print_VkDrmFormatModifierPropertiesEXT(VkDrmFormatModifierProperties
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDrmFormatModifierPropertiesEXT(const VkDrmFormatModifierPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDrmFormatModifierPropertiesEXT(const VkDrmFormatModifierPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34935,7 +33029,7 @@ static void print_VkDrmFormatModifierPropertiesEXT(const VkDrmFormatModifierProp
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDrmFormatModifierPropertiesListEXT(VkDrmFormatModifierPropertiesListEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkDrmFormatModifierPropertiesListEXT(VkDrmFormatModifierPropertiesListEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -34977,7 +33071,7 @@ static void print_VkDrmFormatModifierPropertiesListEXT(VkDrmFormatModifierProper
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDrmFormatModifierPropertiesListEXT(const VkDrmFormatModifierPropertiesListEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDrmFormatModifierPropertiesListEXT(const VkDrmFormatModifierPropertiesListEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35020,7 +33114,7 @@ static void print_VkDrmFormatModifierPropertiesListEXT(const VkDrmFormatModifier
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(VkPhysicalDeviceImageDrmFormatModifierInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(VkPhysicalDeviceImageDrmFormatModifierInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35046,8 +33140,6 @@ static void print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(VkPhysicalDevice
      if (obj.pQueueFamilyIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.queueFamilyIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pQueueFamilyIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.queueFamilyIndexCount;
            print_uint32_t(obj.pQueueFamilyIndices[i], "", isCommaNeeded);
        }
@@ -35064,7 +33156,7 @@ static void print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(VkPhysicalDevice
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(const VkPhysicalDeviceImageDrmFormatModifierInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(const VkPhysicalDeviceImageDrmFormatModifierInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35090,8 +33182,6 @@ static void print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(const VkPhysical
      if (obj->pQueueFamilyIndices) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->queueFamilyIndexCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pQueueFamilyIndices" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->queueFamilyIndexCount;
            print_uint32_t(obj->pQueueFamilyIndices[i], "", isCommaNeeded);
        }
@@ -35109,7 +33199,7 @@ static void print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(const VkPhysical
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageDrmFormatModifierListCreateInfoEXT(VkImageDrmFormatModifierListCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageDrmFormatModifierListCreateInfoEXT(VkImageDrmFormatModifierListCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35131,8 +33221,6 @@ static void print_VkImageDrmFormatModifierListCreateInfoEXT(VkImageDrmFormatModi
      if (obj.pDrmFormatModifiers) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.drmFormatModifierCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDrmFormatModifiers" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.drmFormatModifierCount;
            print_uint64_t(obj.pDrmFormatModifiers[i], "", isCommaNeeded);
        }
@@ -35149,7 +33237,7 @@ static void print_VkImageDrmFormatModifierListCreateInfoEXT(VkImageDrmFormatModi
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageDrmFormatModifierListCreateInfoEXT(const VkImageDrmFormatModifierListCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageDrmFormatModifierListCreateInfoEXT(const VkImageDrmFormatModifierListCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35171,8 +33259,6 @@ static void print_VkImageDrmFormatModifierListCreateInfoEXT(const VkImageDrmForm
      if (obj->pDrmFormatModifiers) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->drmFormatModifierCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDrmFormatModifiers" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->drmFormatModifierCount;
            print_uint64_t(obj->pDrmFormatModifiers[i], "", isCommaNeeded);
        }
@@ -35190,7 +33276,7 @@ static void print_VkImageDrmFormatModifierListCreateInfoEXT(const VkImageDrmForm
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageDrmFormatModifierExplicitCreateInfoEXT(VkImageDrmFormatModifierExplicitCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageDrmFormatModifierExplicitCreateInfoEXT(VkImageDrmFormatModifierExplicitCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35234,7 +33320,7 @@ static void print_VkImageDrmFormatModifierExplicitCreateInfoEXT(VkImageDrmFormat
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageDrmFormatModifierExplicitCreateInfoEXT(const VkImageDrmFormatModifierExplicitCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageDrmFormatModifierExplicitCreateInfoEXT(const VkImageDrmFormatModifierExplicitCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35279,7 +33365,7 @@ static void print_VkImageDrmFormatModifierExplicitCreateInfoEXT(const VkImageDrm
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImageDrmFormatModifierPropertiesEXT(VkImageDrmFormatModifierPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageDrmFormatModifierPropertiesEXT(VkImageDrmFormatModifierPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35302,7 +33388,7 @@ static void print_VkImageDrmFormatModifierPropertiesEXT(VkImageDrmFormatModifier
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImageDrmFormatModifierPropertiesEXT(const VkImageDrmFormatModifierPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImageDrmFormatModifierPropertiesEXT(const VkImageDrmFormatModifierPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35326,7 +33412,7 @@ static void print_VkImageDrmFormatModifierPropertiesEXT(const VkImageDrmFormatMo
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDrmFormatModifierProperties2EXT(VkDrmFormatModifierProperties2EXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkDrmFormatModifierProperties2EXT(VkDrmFormatModifierProperties2EXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35344,7 +33430,7 @@ static void print_VkDrmFormatModifierProperties2EXT(VkDrmFormatModifierPropertie
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDrmFormatModifierProperties2EXT(const VkDrmFormatModifierProperties2EXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDrmFormatModifierProperties2EXT(const VkDrmFormatModifierProperties2EXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35363,7 +33449,7 @@ static void print_VkDrmFormatModifierProperties2EXT(const VkDrmFormatModifierPro
          _OUT << "}" << std::endl;
 }
 
-static void print_VkDrmFormatModifierPropertiesList2EXT(VkDrmFormatModifierPropertiesList2EXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkDrmFormatModifierPropertiesList2EXT(VkDrmFormatModifierPropertiesList2EXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35405,7 +33491,7 @@ static void print_VkDrmFormatModifierPropertiesList2EXT(VkDrmFormatModifierPrope
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDrmFormatModifierPropertiesList2EXT(const VkDrmFormatModifierPropertiesList2EXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDrmFormatModifierPropertiesList2EXT(const VkDrmFormatModifierPropertiesList2EXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35448,7 +33534,7 @@ static void print_VkDrmFormatModifierPropertiesList2EXT(const VkDrmFormatModifie
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceImageViewImageFormatInfoEXT(VkPhysicalDeviceImageViewImageFormatInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceImageViewImageFormatInfoEXT(VkPhysicalDeviceImageViewImageFormatInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35471,7 +33557,7 @@ static void print_VkPhysicalDeviceImageViewImageFormatInfoEXT(VkPhysicalDeviceIm
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceImageViewImageFormatInfoEXT(const VkPhysicalDeviceImageViewImageFormatInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceImageViewImageFormatInfoEXT(const VkPhysicalDeviceImageViewImageFormatInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35495,7 +33581,7 @@ static void print_VkPhysicalDeviceImageViewImageFormatInfoEXT(const VkPhysicalDe
          _OUT << "}" << std::endl;
 }
 
-static void print_VkFilterCubicImageViewImageFormatPropertiesEXT(VkFilterCubicImageViewImageFormatPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkFilterCubicImageViewImageFormatPropertiesEXT(VkFilterCubicImageViewImageFormatPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35520,7 +33606,7 @@ static void print_VkFilterCubicImageViewImageFormatPropertiesEXT(VkFilterCubicIm
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkFilterCubicImageViewImageFormatPropertiesEXT(const VkFilterCubicImageViewImageFormatPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkFilterCubicImageViewImageFormatPropertiesEXT(const VkFilterCubicImageViewImageFormatPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35552,7 +33638,7 @@ static std::map<deUint64, std::string> VkQueueGlobalPriorityEXT_map = {
     std::make_pair(512, "VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT"),
     std::make_pair(1024, "VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT"),
 };
-static void print_VkQueueGlobalPriorityEXT(VkQueueGlobalPriorityEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueueGlobalPriorityEXT(VkQueueGlobalPriorityEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -35560,7 +33646,7 @@ static void print_VkQueueGlobalPriorityEXT(VkQueueGlobalPriorityEXT obj, const s
      else
          _OUT << "\"" << VkQueueGlobalPriorityEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkQueueGlobalPriorityEXT(const VkQueueGlobalPriorityEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkQueueGlobalPriorityEXT(const VkQueueGlobalPriorityEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -35569,7 +33655,7 @@ static void print_VkQueueGlobalPriorityEXT(const VkQueueGlobalPriorityEXT * obj,
          _OUT << "\"" << VkQueueGlobalPriorityEXT_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkDeviceQueueGlobalPriorityCreateInfoEXT(VkDeviceQueueGlobalPriorityCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceQueueGlobalPriorityCreateInfoEXT(VkDeviceQueueGlobalPriorityCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35592,7 +33678,7 @@ static void print_VkDeviceQueueGlobalPriorityCreateInfoEXT(VkDeviceQueueGlobalPr
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkDeviceQueueGlobalPriorityCreateInfoEXT(const VkDeviceQueueGlobalPriorityCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkDeviceQueueGlobalPriorityCreateInfoEXT(const VkDeviceQueueGlobalPriorityCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35616,7 +33702,7 @@ static void print_VkDeviceQueueGlobalPriorityCreateInfoEXT(const VkDeviceQueueGl
          _OUT << "}" << std::endl;
 }
 
-static void print_VkImportMemoryHostPointerInfoEXT(VkImportMemoryHostPointerInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkImportMemoryHostPointerInfoEXT(VkImportMemoryHostPointerInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35641,7 +33727,7 @@ static void print_VkImportMemoryHostPointerInfoEXT(VkImportMemoryHostPointerInfo
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkImportMemoryHostPointerInfoEXT(const VkImportMemoryHostPointerInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkImportMemoryHostPointerInfoEXT(const VkImportMemoryHostPointerInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35667,7 +33753,7 @@ static void print_VkImportMemoryHostPointerInfoEXT(const VkImportMemoryHostPoint
          _OUT << "}" << std::endl;
 }
 
-static void print_VkMemoryHostPointerPropertiesEXT(VkMemoryHostPointerPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryHostPointerPropertiesEXT(VkMemoryHostPointerPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35690,7 +33776,7 @@ static void print_VkMemoryHostPointerPropertiesEXT(VkMemoryHostPointerProperties
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkMemoryHostPointerPropertiesEXT(const VkMemoryHostPointerPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkMemoryHostPointerPropertiesEXT(const VkMemoryHostPointerPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35714,7 +33800,7 @@ static void print_VkMemoryHostPointerPropertiesEXT(const VkMemoryHostPointerProp
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(VkPhysicalDeviceExternalMemoryHostPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(VkPhysicalDeviceExternalMemoryHostPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35737,7 +33823,7 @@ static void print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(VkPhysicalDevi
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(const VkPhysicalDeviceExternalMemoryHostPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(const VkPhysicalDeviceExternalMemoryHostPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35767,7 +33853,7 @@ static std::map<deUint64, std::string> VkTimeDomainEXT_map = {
     std::make_pair(2, "VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT"),
     std::make_pair(3, "VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT"),
 };
-static void print_VkTimeDomainEXT(VkTimeDomainEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkTimeDomainEXT(VkTimeDomainEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -35775,7 +33861,7 @@ static void print_VkTimeDomainEXT(VkTimeDomainEXT obj, const std::string& str, b
      else
          _OUT << "\"" << VkTimeDomainEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkTimeDomainEXT(const VkTimeDomainEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkTimeDomainEXT(const VkTimeDomainEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -35784,7 +33870,7 @@ static void print_VkTimeDomainEXT(const VkTimeDomainEXT * obj, const std::string
          _OUT << "\"" << VkTimeDomainEXT_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkCalibratedTimestampInfoEXT(VkCalibratedTimestampInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkCalibratedTimestampInfoEXT(VkCalibratedTimestampInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35807,7 +33893,7 @@ static void print_VkCalibratedTimestampInfoEXT(VkCalibratedTimestampInfoEXT obj,
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkCalibratedTimestampInfoEXT(const VkCalibratedTimestampInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkCalibratedTimestampInfoEXT(const VkCalibratedTimestampInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35831,7 +33917,7 @@ static void print_VkCalibratedTimestampInfoEXT(const VkCalibratedTimestampInfoEX
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35854,7 +33940,7 @@ static void print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(VkPhysical
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35878,7 +33964,7 @@ static void print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(const VkPh
          _OUT << "}" << std::endl;
 }
 
-static void print_VkVertexInputBindingDivisorDescriptionEXT(VkVertexInputBindingDivisorDescriptionEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkVertexInputBindingDivisorDescriptionEXT(VkVertexInputBindingDivisorDescriptionEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35894,7 +33980,7 @@ static void print_VkVertexInputBindingDivisorDescriptionEXT(VkVertexInputBinding
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkVertexInputBindingDivisorDescriptionEXT(const VkVertexInputBindingDivisorDescriptionEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkVertexInputBindingDivisorDescriptionEXT(const VkVertexInputBindingDivisorDescriptionEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35911,7 +33997,7 @@ static void print_VkVertexInputBindingDivisorDescriptionEXT(const VkVertexInputB
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineVertexInputDivisorStateCreateInfoEXT(VkPipelineVertexInputDivisorStateCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineVertexInputDivisorStateCreateInfoEXT(VkPipelineVertexInputDivisorStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35953,7 +34039,7 @@ static void print_VkPipelineVertexInputDivisorStateCreateInfoEXT(VkPipelineVerte
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineVertexInputDivisorStateCreateInfoEXT(const VkPipelineVertexInputDivisorStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineVertexInputDivisorStateCreateInfoEXT(const VkPipelineVertexInputDivisorStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -35996,7 +34082,7 @@ static void print_VkPipelineVertexInputDivisorStateCreateInfoEXT(const VkPipelin
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36021,7 +34107,7 @@ static void print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(VkPhysicalDe
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36047,7 +34133,7 @@ static void print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(const VkPhys
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDevicePCIBusInfoPropertiesEXT(VkPhysicalDevicePCIBusInfoPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevicePCIBusInfoPropertiesEXT(VkPhysicalDevicePCIBusInfoPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36076,7 +34162,7 @@ static void print_VkPhysicalDevicePCIBusInfoPropertiesEXT(VkPhysicalDevicePCIBus
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDevicePCIBusInfoPropertiesEXT(const VkPhysicalDevicePCIBusInfoPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevicePCIBusInfoPropertiesEXT(const VkPhysicalDevicePCIBusInfoPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36106,7 +34192,7 @@ static void print_VkPhysicalDevicePCIBusInfoPropertiesEXT(const VkPhysicalDevice
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(VkPhysicalDeviceSubgroupSizeControlFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(VkPhysicalDeviceSubgroupSizeControlFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36131,7 +34217,7 @@ static void print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(VkPhysicalDevic
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(const VkPhysicalDeviceSubgroupSizeControlFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(const VkPhysicalDeviceSubgroupSizeControlFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36157,7 +34243,7 @@ static void print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(const VkPhysica
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(VkPhysicalDeviceSubgroupSizeControlPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(VkPhysicalDeviceSubgroupSizeControlPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36186,7 +34272,7 @@ static void print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(VkPhysicalDev
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(const VkPhysicalDeviceSubgroupSizeControlPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(const VkPhysicalDeviceSubgroupSizeControlPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36216,7 +34302,7 @@ static void print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(const VkPhysi
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36239,7 +34325,7 @@ static void print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(VkPipel
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(const VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(const VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36263,7 +34349,7 @@ static void print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(const V
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36288,7 +34374,7 @@ static void print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(VkPhysicalDe
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36314,7 +34400,7 @@ static void print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(const VkPhys
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(VkPhysicalDeviceMemoryBudgetPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(VkPhysicalDeviceMemoryBudgetPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36334,8 +34420,6 @@ static void print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(VkPhysicalDeviceMemo
      if (obj.heapBudget) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
-           std:: stringstream tmp;
-           tmp << "heapBudget" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
            print_VkDeviceSize(obj.heapBudget[i], "", isCommaNeeded);
        }
@@ -36351,8 +34435,6 @@ static void print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(VkPhysicalDeviceMemo
      if (obj.heapUsage) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
-           std:: stringstream tmp;
-           tmp << "heapUsage" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
            print_VkDeviceSize(obj.heapUsage[i], "", isCommaNeeded);
        }
@@ -36369,7 +34451,7 @@ static void print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(VkPhysicalDeviceMemo
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(const VkPhysicalDeviceMemoryBudgetPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(const VkPhysicalDeviceMemoryBudgetPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36389,8 +34471,6 @@ static void print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(const VkPhysicalDevi
      if (obj->heapBudget) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
-           std:: stringstream tmp;
-           tmp << "heapBudget" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
            print_VkDeviceSize(obj->heapBudget[i], "", isCommaNeeded);
        }
@@ -36406,8 +34486,6 @@ static void print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(const VkPhysicalDevi
      if (obj->heapUsage) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
-           std:: stringstream tmp;
-           tmp << "heapUsage" << "_" << i;
            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
            print_VkDeviceSize(obj->heapUsage[i], "", isCommaNeeded);
        }
@@ -36432,7 +34510,7 @@ static std::map<deUint64, std::string> VkValidationFeatureEnableEXT_map = {
     std::make_pair(3, "VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT"),
     std::make_pair(4, "VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT"),
 };
-static void print_VkValidationFeatureEnableEXT(VkValidationFeatureEnableEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkValidationFeatureEnableEXT(VkValidationFeatureEnableEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -36440,7 +34518,7 @@ static void print_VkValidationFeatureEnableEXT(VkValidationFeatureEnableEXT obj,
      else
          _OUT << "\"" << VkValidationFeatureEnableEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkValidationFeatureEnableEXT(const VkValidationFeatureEnableEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkValidationFeatureEnableEXT(const VkValidationFeatureEnableEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -36459,7 +34537,7 @@ static std::map<deUint64, std::string> VkValidationFeatureDisableEXT_map = {
     std::make_pair(6, "VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT"),
     std::make_pair(7, "VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT"),
 };
-static void print_VkValidationFeatureDisableEXT(VkValidationFeatureDisableEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkValidationFeatureDisableEXT(VkValidationFeatureDisableEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -36467,7 +34545,7 @@ static void print_VkValidationFeatureDisableEXT(VkValidationFeatureDisableEXT ob
      else
          _OUT << "\"" << VkValidationFeatureDisableEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkValidationFeatureDisableEXT(const VkValidationFeatureDisableEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkValidationFeatureDisableEXT(const VkValidationFeatureDisableEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -36476,7 +34554,7 @@ static void print_VkValidationFeatureDisableEXT(const VkValidationFeatureDisable
          _OUT << "\"" << VkValidationFeatureDisableEXT_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkValidationFeaturesEXT(VkValidationFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkValidationFeaturesEXT(VkValidationFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36498,8 +34576,6 @@ static void print_VkValidationFeaturesEXT(VkValidationFeaturesEXT obj, const std
      if (obj.pEnabledValidationFeatures) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.enabledValidationFeatureCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pEnabledValidationFeatures" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.enabledValidationFeatureCount;
            print_VkValidationFeatureEnableEXT(obj.pEnabledValidationFeatures[i], "", isCommaNeeded);
        }
@@ -36517,8 +34593,6 @@ static void print_VkValidationFeaturesEXT(VkValidationFeaturesEXT obj, const std
      if (obj.pDisabledValidationFeatures) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.disabledValidationFeatureCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDisabledValidationFeatures" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.disabledValidationFeatureCount;
            print_VkValidationFeatureDisableEXT(obj.pDisabledValidationFeatures[i], "", isCommaNeeded);
        }
@@ -36535,7 +34609,7 @@ static void print_VkValidationFeaturesEXT(VkValidationFeaturesEXT obj, const std
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkValidationFeaturesEXT(const VkValidationFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkValidationFeaturesEXT(const VkValidationFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36557,8 +34631,6 @@ static void print_VkValidationFeaturesEXT(const VkValidationFeaturesEXT * obj, c
      if (obj->pEnabledValidationFeatures) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->enabledValidationFeatureCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pEnabledValidationFeatures" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->enabledValidationFeatureCount;
            print_VkValidationFeatureEnableEXT(obj->pEnabledValidationFeatures[i], "", isCommaNeeded);
        }
@@ -36576,8 +34648,6 @@ static void print_VkValidationFeaturesEXT(const VkValidationFeaturesEXT * obj, c
      if (obj->pDisabledValidationFeatures) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->disabledValidationFeatureCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pDisabledValidationFeatures" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->disabledValidationFeatureCount;
            print_VkValidationFeatureDisableEXT(obj->pDisabledValidationFeatures[i], "", isCommaNeeded);
        }
@@ -36595,7 +34665,7 @@ static void print_VkValidationFeaturesEXT(const VkValidationFeaturesEXT * obj, c
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36622,7 +34692,7 @@ static void print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(VkPhysicalD
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36650,7 +34720,7 @@ static void print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(const VkPhy
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36673,7 +34743,7 @@ static void print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(VkPhysicalDeviceYc
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36697,14 +34767,14 @@ static void print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(const VkPhysicalDe
          _OUT << "}" << std::endl;
 }
 
-static void print_VkHeadlessSurfaceCreateFlagsEXT(VkHeadlessSurfaceCreateFlagsEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkHeadlessSurfaceCreateFlagsEXT(VkHeadlessSurfaceCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
      else
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
-static void print_VkHeadlessSurfaceCreateFlagsEXT(const VkHeadlessSurfaceCreateFlagsEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkHeadlessSurfaceCreateFlagsEXT(const VkHeadlessSurfaceCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (commaNeeded)
          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
@@ -36712,7 +34782,7 @@ static void print_VkHeadlessSurfaceCreateFlagsEXT(const VkHeadlessSurfaceCreateF
          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
 }
 
-static void print_VkHeadlessSurfaceCreateInfoEXT(VkHeadlessSurfaceCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkHeadlessSurfaceCreateInfoEXT(VkHeadlessSurfaceCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36735,7 +34805,7 @@ static void print_VkHeadlessSurfaceCreateInfoEXT(VkHeadlessSurfaceCreateInfoEXT
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkHeadlessSurfaceCreateInfoEXT(const VkHeadlessSurfaceCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkHeadlessSurfaceCreateInfoEXT(const VkHeadlessSurfaceCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36765,7 +34835,7 @@ static std::map<deUint64, std::string> VkLineRasterizationModeEXT_map = {
     std::make_pair(2, "VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT"),
     std::make_pair(3, "VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT"),
 };
-static void print_VkLineRasterizationModeEXT(VkLineRasterizationModeEXT obj, const std::string& str, bool commaNeeded) {
+static void print_VkLineRasterizationModeEXT(VkLineRasterizationModeEXT obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -36773,7 +34843,7 @@ static void print_VkLineRasterizationModeEXT(VkLineRasterizationModeEXT obj, con
      else
          _OUT << "\"" << VkLineRasterizationModeEXT_map[obj] << "\"" << std::endl;
 }
-static void print_VkLineRasterizationModeEXT(const VkLineRasterizationModeEXT * obj, const std::string& str, bool commaNeeded) {
+static void print_VkLineRasterizationModeEXT(const VkLineRasterizationModeEXT * obj, const std::string& str, bool commaNeeded=true) {
      PRINT_SPACE
      if (str != "") _OUT << "\"" << str << "\"" << " : ";
      if (commaNeeded)
@@ -36782,7 +34852,7 @@ static void print_VkLineRasterizationModeEXT(const VkLineRasterizationModeEXT *
          _OUT << "\"" << VkLineRasterizationModeEXT_map[*obj] << "\"" << std::endl;
 }
 
-static void print_VkPhysicalDeviceLineRasterizationFeaturesEXT(VkPhysicalDeviceLineRasterizationFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceLineRasterizationFeaturesEXT(VkPhysicalDeviceLineRasterizationFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36815,7 +34885,7 @@ static void print_VkPhysicalDeviceLineRasterizationFeaturesEXT(VkPhysicalDeviceL
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceLineRasterizationFeaturesEXT(const VkPhysicalDeviceLineRasterizationFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceLineRasterizationFeaturesEXT(const VkPhysicalDeviceLineRasterizationFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36849,7 +34919,7 @@ static void print_VkPhysicalDeviceLineRasterizationFeaturesEXT(const VkPhysicalD
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceLineRasterizationPropertiesEXT(VkPhysicalDeviceLineRasterizationPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceLineRasterizationPropertiesEXT(VkPhysicalDeviceLineRasterizationPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36872,7 +34942,7 @@ static void print_VkPhysicalDeviceLineRasterizationPropertiesEXT(VkPhysicalDevic
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceLineRasterizationPropertiesEXT(const VkPhysicalDeviceLineRasterizationPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceLineRasterizationPropertiesEXT(const VkPhysicalDeviceLineRasterizationPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36896,7 +34966,7 @@ static void print_VkPhysicalDeviceLineRasterizationPropertiesEXT(const VkPhysica
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineRasterizationLineStateCreateInfoEXT(VkPipelineRasterizationLineStateCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineRasterizationLineStateCreateInfoEXT(VkPipelineRasterizationLineStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36925,7 +34995,7 @@ static void print_VkPipelineRasterizationLineStateCreateInfoEXT(VkPipelineRaster
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineRasterizationLineStateCreateInfoEXT(const VkPipelineRasterizationLineStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineRasterizationLineStateCreateInfoEXT(const VkPipelineRasterizationLineStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -36955,7 +35025,7 @@ static void print_VkPipelineRasterizationLineStateCreateInfoEXT(const VkPipeline
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(VkPhysicalDeviceShaderAtomicFloatFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(VkPhysicalDeviceShaderAtomicFloatFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37000,7 +35070,7 @@ static void print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(VkPhysicalDeviceS
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37046,7 +35116,7 @@ static void print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(const VkPhysicalD
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(VkPhysicalDeviceIndexTypeUint8FeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(VkPhysicalDeviceIndexTypeUint8FeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37069,7 +35139,7 @@ static void print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(VkPhysicalDeviceInde
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(const VkPhysicalDeviceIndexTypeUint8FeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(const VkPhysicalDeviceIndexTypeUint8FeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37093,7 +35163,7 @@ static void print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(const VkPhysicalDevi
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37116,7 +35186,7 @@ static void print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(VkPhysicalDevi
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37140,7 +35210,7 @@ static void print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(const VkPhysic
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37163,7 +35233,7 @@ static void print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(VkPh
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(const VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(const VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37187,7 +35257,7 @@ static void print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(cons
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37210,7 +35280,7 @@ static void print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(VkPhysicalDevi
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37234,7 +35304,7 @@ static void print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(const VkPhysic
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37263,7 +35333,7 @@ static void print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(VkPhysicalDe
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(const VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(const VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37293,7 +35363,7 @@ static void print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(const VkPhys
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceRobustness2FeaturesEXT(VkPhysicalDeviceRobustness2FeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceRobustness2FeaturesEXT(VkPhysicalDeviceRobustness2FeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37320,7 +35390,7 @@ static void print_VkPhysicalDeviceRobustness2FeaturesEXT(VkPhysicalDeviceRobustn
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceRobustness2FeaturesEXT(const VkPhysicalDeviceRobustness2FeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceRobustness2FeaturesEXT(const VkPhysicalDeviceRobustness2FeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37348,7 +35418,7 @@ static void print_VkPhysicalDeviceRobustness2FeaturesEXT(const VkPhysicalDeviceR
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceRobustness2PropertiesEXT(VkPhysicalDeviceRobustness2PropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceRobustness2PropertiesEXT(VkPhysicalDeviceRobustness2PropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37373,7 +35443,7 @@ static void print_VkPhysicalDeviceRobustness2PropertiesEXT(VkPhysicalDeviceRobus
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceRobustness2PropertiesEXT(const VkPhysicalDeviceRobustness2PropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceRobustness2PropertiesEXT(const VkPhysicalDeviceRobustness2PropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37399,7 +35469,7 @@ static void print_VkPhysicalDeviceRobustness2PropertiesEXT(const VkPhysicalDevic
          _OUT << "}" << std::endl;
 }
 
-static void print_VkSamplerCustomBorderColorCreateInfoEXT(VkSamplerCustomBorderColorCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkSamplerCustomBorderColorCreateInfoEXT(VkSamplerCustomBorderColorCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37424,7 +35494,7 @@ static void print_VkSamplerCustomBorderColorCreateInfoEXT(VkSamplerCustomBorderC
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkSamplerCustomBorderColorCreateInfoEXT(const VkSamplerCustomBorderColorCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkSamplerCustomBorderColorCreateInfoEXT(const VkSamplerCustomBorderColorCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37450,7 +35520,7 @@ static void print_VkSamplerCustomBorderColorCreateInfoEXT(const VkSamplerCustomB
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceCustomBorderColorPropertiesEXT(VkPhysicalDeviceCustomBorderColorPropertiesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceCustomBorderColorPropertiesEXT(VkPhysicalDeviceCustomBorderColorPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37473,7 +35543,7 @@ static void print_VkPhysicalDeviceCustomBorderColorPropertiesEXT(VkPhysicalDevic
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceCustomBorderColorPropertiesEXT(const VkPhysicalDeviceCustomBorderColorPropertiesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceCustomBorderColorPropertiesEXT(const VkPhysicalDeviceCustomBorderColorPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37497,7 +35567,7 @@ static void print_VkPhysicalDeviceCustomBorderColorPropertiesEXT(const VkPhysica
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceCustomBorderColorFeaturesEXT(VkPhysicalDeviceCustomBorderColorFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceCustomBorderColorFeaturesEXT(VkPhysicalDeviceCustomBorderColorFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37522,7 +35592,7 @@ static void print_VkPhysicalDeviceCustomBorderColorFeaturesEXT(VkPhysicalDeviceC
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceCustomBorderColorFeaturesEXT(const VkPhysicalDeviceCustomBorderColorFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceCustomBorderColorFeaturesEXT(const VkPhysicalDeviceCustomBorderColorFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37548,7 +35618,7 @@ static void print_VkPhysicalDeviceCustomBorderColorFeaturesEXT(const VkPhysicalD
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37571,7 +35641,7 @@ static void print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(VkPhysicalDev
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37595,7 +35665,7 @@ static void print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(const VkPhysi
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceImageRobustnessFeaturesEXT(VkPhysicalDeviceImageRobustnessFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceImageRobustnessFeaturesEXT(VkPhysicalDeviceImageRobustnessFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37618,7 +35688,7 @@ static void print_VkPhysicalDeviceImageRobustnessFeaturesEXT(VkPhysicalDeviceIma
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceImageRobustnessFeaturesEXT(const VkPhysicalDeviceImageRobustnessFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceImageRobustnessFeaturesEXT(const VkPhysicalDeviceImageRobustnessFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37642,7 +35712,7 @@ static void print_VkPhysicalDeviceImageRobustnessFeaturesEXT(const VkPhysicalDev
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDevice4444FormatsFeaturesEXT(VkPhysicalDevice4444FormatsFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevice4444FormatsFeaturesEXT(VkPhysicalDevice4444FormatsFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37667,7 +35737,7 @@ static void print_VkPhysicalDevice4444FormatsFeaturesEXT(VkPhysicalDevice4444For
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDevice4444FormatsFeaturesEXT(const VkPhysicalDevice4444FormatsFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDevice4444FormatsFeaturesEXT(const VkPhysicalDevice4444FormatsFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37693,7 +35763,7 @@ static void print_VkPhysicalDevice4444FormatsFeaturesEXT(const VkPhysicalDevice4
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37716,7 +35786,7 @@ static void print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(VkPhysicalD
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37740,7 +35810,7 @@ static void print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(const VkPhy
          _OUT << "}" << std::endl;
 }
 
-static void print_VkVertexInputBindingDescription2EXT(VkVertexInputBindingDescription2EXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkVertexInputBindingDescription2EXT(VkVertexInputBindingDescription2EXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37769,7 +35839,7 @@ static void print_VkVertexInputBindingDescription2EXT(VkVertexInputBindingDescri
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkVertexInputBindingDescription2EXT(const VkVertexInputBindingDescription2EXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkVertexInputBindingDescription2EXT(const VkVertexInputBindingDescription2EXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37799,7 +35869,7 @@ static void print_VkVertexInputBindingDescription2EXT(const VkVertexInputBinding
          _OUT << "}" << std::endl;
 }
 
-static void print_VkVertexInputAttributeDescription2EXT(VkVertexInputAttributeDescription2EXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkVertexInputAttributeDescription2EXT(VkVertexInputAttributeDescription2EXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37828,7 +35898,7 @@ static void print_VkVertexInputAttributeDescription2EXT(VkVertexInputAttributeDe
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkVertexInputAttributeDescription2EXT(const VkVertexInputAttributeDescription2EXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkVertexInputAttributeDescription2EXT(const VkVertexInputAttributeDescription2EXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37858,7 +35928,7 @@ static void print_VkVertexInputAttributeDescription2EXT(const VkVertexInputAttri
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37885,7 +35955,7 @@ static void print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(VkPhysicalDev
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37913,7 +35983,7 @@ static void print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(const VkPhysi
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPhysicalDeviceColorWriteEnableFeaturesEXT(VkPhysicalDeviceColorWriteEnableFeaturesEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceColorWriteEnableFeaturesEXT(VkPhysicalDeviceColorWriteEnableFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37936,7 +36006,7 @@ static void print_VkPhysicalDeviceColorWriteEnableFeaturesEXT(VkPhysicalDeviceCo
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPhysicalDeviceColorWriteEnableFeaturesEXT(const VkPhysicalDeviceColorWriteEnableFeaturesEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPhysicalDeviceColorWriteEnableFeaturesEXT(const VkPhysicalDeviceColorWriteEnableFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37960,7 +36030,7 @@ static void print_VkPhysicalDeviceColorWriteEnableFeaturesEXT(const VkPhysicalDe
          _OUT << "}" << std::endl;
 }
 
-static void print_VkPipelineColorWriteCreateInfoEXT(VkPipelineColorWriteCreateInfoEXT obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineColorWriteCreateInfoEXT(VkPipelineColorWriteCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -37982,8 +36052,6 @@ static void print_VkPipelineColorWriteCreateInfoEXT(VkPipelineColorWriteCreateIn
      if (obj.pColorWriteEnables) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj.attachmentCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pColorWriteEnables" << "_" << i;
            bool isCommaNeeded = (i+1) != obj.attachmentCount;
            print_VkBool32(obj.pColorWriteEnables[i], "", isCommaNeeded);
        }
@@ -38000,7 +36068,7 @@ static void print_VkPipelineColorWriteCreateInfoEXT(VkPipelineColorWriteCreateIn
      else
          _OUT << "}" << std::endl;
 }
-static void print_VkPipelineColorWriteCreateInfoEXT(const VkPipelineColorWriteCreateInfoEXT * obj, const std::string& s, bool commaNeeded) {
+static void print_VkPipelineColorWriteCreateInfoEXT(const VkPipelineColorWriteCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
      PRINT_SPACE
      _OUT << "{" << std::endl;
      INDENT(4);
@@ -38022,8 +36090,6 @@ static void print_VkPipelineColorWriteCreateInfoEXT(const VkPipelineColorWriteCr
      if (obj->pColorWriteEnables) {
        _OUT << "[" << std::endl;
        for (unsigned int i = 0; i < obj->attachmentCount; i++) {
-           std:: stringstream tmp;
-           tmp << "pColorWriteEnables" << "_" << i;
            bool isCommaNeeded = (i+1) != obj->attachmentCount;
            print_VkBool32(obj->pColorWriteEnables[i], "", isCommaNeeded);
        }
@@ -38041,7 +36107,412 @@ static void print_VkPipelineColorWriteCreateInfoEXT(const VkPipelineColorWriteCr
          _OUT << "}" << std::endl;
 }
 
-}//End of namespace vk_json
+static void print_VkApplicationParametersEXT(VkApplicationParametersEXT obj, const std::string& s, bool commaNeeded=true) {
+     PRINT_SPACE
+     _OUT << "{" << std::endl;
+     INDENT(4);
+
+     print_VkStructureType(obj.sType, "sType", 1);
+
+      if (obj.pNext) {
+         dumpPNextChain(obj.pNext);
+      } else {
+         PRINT_SPACE
+         _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
+     }
+
+     print_uint32_t(obj.vendorID, "vendorID", 1);
+
+     print_uint32_t(obj.deviceID, "deviceID", 1);
+
+     print_uint32_t(obj.key, "key", 1);
+
+     print_uint64_t(obj.value, "value", 0);
+
+     INDENT(-4);
+     PRINT_SPACE
+     if (commaNeeded)
+         _OUT << "}," << std::endl;
+     else
+         _OUT << "}" << std::endl;
+}
+static void print_VkApplicationParametersEXT(const VkApplicationParametersEXT * obj, const std::string& s, bool commaNeeded=true) {
+     PRINT_SPACE
+     _OUT << "{" << std::endl;
+     INDENT(4);
+
+     print_VkStructureType(obj->sType, "sType", 1);
+
+      if (obj->pNext) {
+         dumpPNextChain(obj->pNext);
+      } else {
+         PRINT_SPACE
+         _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
+     }
+
+     print_uint32_t(obj->vendorID, "vendorID", 1);
+
+     print_uint32_t(obj->deviceID, "deviceID", 1);
+
+     print_uint32_t(obj->key, "key", 1);
+
+     print_uint64_t(obj->value, "value", 0);
+
+     INDENT(-4);
+     PRINT_SPACE
+     if (commaNeeded)
+         _OUT << "}," << std::endl;
+     else
+         _OUT << "}" << std::endl;
+}
+
+/*************************************** Begin prototypes ***********************************/
+/*************************************** End prototypes ***********************************/
+
+static void dumpPNextChain(const void* pNext) {
+      VkBaseInStructure *pBase = (VkBaseInStructure*)pNext;
+      if (pNext) {
+           PRINT_SPACE
+           _OUT << "\"pNext\":"<< std::endl;
 
+          switch (pBase->sType) {
+             case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR:print_VkDisplayPresentInfoKHR((VkDisplayPresentInfoKHR *) pNext, "VkDisplayPresentInfoKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT:print_VkValidationFeaturesEXT((VkValidationFeaturesEXT *) pNext, "VkValidationFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT:print_VkApplicationParametersEXT((VkApplicationParametersEXT *) pNext, "VkApplicationParametersEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2:print_VkPhysicalDeviceFeatures2((VkPhysicalDeviceFeatures2 *) pNext, "VkPhysicalDeviceFeatures2", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES:print_VkPhysicalDeviceDriverProperties((VkPhysicalDeviceDriverProperties *) pNext, "VkPhysicalDeviceDriverProperties", true);
+             break;
+             case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR:print_VkPresentRegionsKHR((VkPresentRegionsKHR *) pNext, "VkPresentRegionsKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES:print_VkPhysicalDeviceVariablePointersFeatures((VkPhysicalDeviceVariablePointersFeatures *) pNext, "VkPhysicalDeviceVariablePointersFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO:print_VkPhysicalDeviceExternalImageFormatInfo((VkPhysicalDeviceExternalImageFormatInfo *) pNext, "VkPhysicalDeviceExternalImageFormatInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES:print_VkExternalImageFormatProperties((VkExternalImageFormatProperties *) pNext, "VkExternalImageFormatProperties", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES:print_VkPhysicalDeviceIDProperties((VkPhysicalDeviceIDProperties *) pNext, "VkPhysicalDeviceIDProperties", true);
+             break;
+             case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO:print_VkExternalMemoryImageCreateInfo((VkExternalMemoryImageCreateInfo *) pNext, "VkExternalMemoryImageCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO:print_VkExternalMemoryBufferCreateInfo((VkExternalMemoryBufferCreateInfo *) pNext, "VkExternalMemoryBufferCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO:print_VkExportMemoryAllocateInfo((VkExportMemoryAllocateInfo *) pNext, "VkExportMemoryAllocateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR:print_VkImportMemoryFdInfoKHR((VkImportMemoryFdInfoKHR *) pNext, "VkImportMemoryFdInfoKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO:print_VkExportSemaphoreCreateInfo((VkExportSemaphoreCreateInfo *) pNext, "VkExportSemaphoreCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO:print_VkExportFenceCreateInfo((VkExportFenceCreateInfo *) pNext, "VkExportFenceCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES:print_VkPhysicalDeviceMultiviewFeatures((VkPhysicalDeviceMultiviewFeatures *) pNext, "VkPhysicalDeviceMultiviewFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES:print_VkPhysicalDeviceMultiviewProperties((VkPhysicalDeviceMultiviewProperties *) pNext, "VkPhysicalDeviceMultiviewProperties", true);
+             break;
+             case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO:print_VkRenderPassMultiviewCreateInfo((VkRenderPassMultiviewCreateInfo *) pNext, "VkRenderPassMultiviewCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT:print_VkSwapchainCounterCreateInfoEXT((VkSwapchainCounterCreateInfoEXT *) pNext, "VkSwapchainCounterCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO:print_VkMemoryAllocateFlagsInfo((VkMemoryAllocateFlagsInfo *) pNext, "VkMemoryAllocateFlagsInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO:print_VkBindBufferMemoryDeviceGroupInfo((VkBindBufferMemoryDeviceGroupInfo *) pNext, "VkBindBufferMemoryDeviceGroupInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO:print_VkBindImageMemoryDeviceGroupInfo((VkBindImageMemoryDeviceGroupInfo *) pNext, "VkBindImageMemoryDeviceGroupInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO:print_VkDeviceGroupRenderPassBeginInfo((VkDeviceGroupRenderPassBeginInfo *) pNext, "VkDeviceGroupRenderPassBeginInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO:print_VkDeviceGroupCommandBufferBeginInfo((VkDeviceGroupCommandBufferBeginInfo *) pNext, "VkDeviceGroupCommandBufferBeginInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO:print_VkDeviceGroupSubmitInfo((VkDeviceGroupSubmitInfo *) pNext, "VkDeviceGroupSubmitInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR:print_VkImageSwapchainCreateInfoKHR((VkImageSwapchainCreateInfoKHR *) pNext, "VkImageSwapchainCreateInfoKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR:print_VkBindImageMemorySwapchainInfoKHR((VkBindImageMemorySwapchainInfoKHR *) pNext, "VkBindImageMemorySwapchainInfoKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR:print_VkDeviceGroupPresentInfoKHR((VkDeviceGroupPresentInfoKHR *) pNext, "VkDeviceGroupPresentInfoKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO:print_VkDeviceGroupDeviceCreateInfo((VkDeviceGroupDeviceCreateInfo *) pNext, "VkDeviceGroupDeviceCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR:print_VkDeviceGroupSwapchainCreateInfoKHR((VkDeviceGroupSwapchainCreateInfoKHR *) pNext, "VkDeviceGroupSwapchainCreateInfoKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT:print_VkPhysicalDeviceDiscardRectanglePropertiesEXT((VkPhysicalDeviceDiscardRectanglePropertiesEXT *) pNext, "VkPhysicalDeviceDiscardRectanglePropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT:print_VkPipelineDiscardRectangleStateCreateInfoEXT((VkPipelineDiscardRectangleStateCreateInfoEXT *) pNext, "VkPipelineDiscardRectangleStateCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO:print_VkRenderPassInputAttachmentAspectCreateInfo((VkRenderPassInputAttachmentAspectCreateInfo *) pNext, "VkRenderPassInputAttachmentAspectCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR:print_VkSharedPresentSurfaceCapabilitiesKHR((VkSharedPresentSurfaceCapabilitiesKHR *) pNext, "VkSharedPresentSurfaceCapabilitiesKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES:print_VkPhysicalDevice16BitStorageFeatures((VkPhysicalDevice16BitStorageFeatures *) pNext, "VkPhysicalDevice16BitStorageFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES:print_VkPhysicalDeviceSubgroupProperties((VkPhysicalDeviceSubgroupProperties *) pNext, "VkPhysicalDeviceSubgroupProperties", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES:print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures((VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures *) pNext, "VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES:print_VkPhysicalDevicePointClippingProperties((VkPhysicalDevicePointClippingProperties *) pNext, "VkPhysicalDevicePointClippingProperties", true);
+             break;
+             case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS:print_VkMemoryDedicatedRequirements((VkMemoryDedicatedRequirements *) pNext, "VkMemoryDedicatedRequirements", true);
+             break;
+             case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO:print_VkMemoryDedicatedAllocateInfo((VkMemoryDedicatedAllocateInfo *) pNext, "VkMemoryDedicatedAllocateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO:print_VkImageViewUsageCreateInfo((VkImageViewUsageCreateInfo *) pNext, "VkImageViewUsageCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO:print_VkPipelineTessellationDomainOriginStateCreateInfo((VkPipelineTessellationDomainOriginStateCreateInfo *) pNext, "VkPipelineTessellationDomainOriginStateCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO:print_VkSamplerYcbcrConversionInfo((VkSamplerYcbcrConversionInfo *) pNext, "VkSamplerYcbcrConversionInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO:print_VkBindImagePlaneMemoryInfo((VkBindImagePlaneMemoryInfo *) pNext, "VkBindImagePlaneMemoryInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO:print_VkImagePlaneMemoryRequirementsInfo((VkImagePlaneMemoryRequirementsInfo *) pNext, "VkImagePlaneMemoryRequirementsInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES:print_VkPhysicalDeviceSamplerYcbcrConversionFeatures((VkPhysicalDeviceSamplerYcbcrConversionFeatures *) pNext, "VkPhysicalDeviceSamplerYcbcrConversionFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES:print_VkSamplerYcbcrConversionImageFormatProperties((VkSamplerYcbcrConversionImageFormatProperties *) pNext, "VkSamplerYcbcrConversionImageFormatProperties", true);
+             break;
+             case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO:print_VkProtectedSubmitInfo((VkProtectedSubmitInfo *) pNext, "VkProtectedSubmitInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES:print_VkPhysicalDeviceProtectedMemoryFeatures((VkPhysicalDeviceProtectedMemoryFeatures *) pNext, "VkPhysicalDeviceProtectedMemoryFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES:print_VkPhysicalDeviceProtectedMemoryProperties((VkPhysicalDeviceProtectedMemoryProperties *) pNext, "VkPhysicalDeviceProtectedMemoryProperties", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES:print_VkPhysicalDeviceSamplerFilterMinmaxProperties((VkPhysicalDeviceSamplerFilterMinmaxProperties *) pNext, "VkPhysicalDeviceSamplerFilterMinmaxProperties", true);
+             break;
+             case VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT:print_VkSampleLocationsInfoEXT((VkSampleLocationsInfoEXT *) pNext, "VkSampleLocationsInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT:print_VkRenderPassSampleLocationsBeginInfoEXT((VkRenderPassSampleLocationsBeginInfoEXT *) pNext, "VkRenderPassSampleLocationsBeginInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT:print_VkPipelineSampleLocationsStateCreateInfoEXT((VkPipelineSampleLocationsStateCreateInfoEXT *) pNext, "VkPipelineSampleLocationsStateCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT:print_VkPhysicalDeviceSampleLocationsPropertiesEXT((VkPhysicalDeviceSampleLocationsPropertiesEXT *) pNext, "VkPhysicalDeviceSampleLocationsPropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO:print_VkSamplerReductionModeCreateInfo((VkSamplerReductionModeCreateInfo *) pNext, "VkSamplerReductionModeCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT:print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT((VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT *) pNext, "VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT:print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT((VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT *) pNext, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT:print_VkPipelineColorBlendAdvancedStateCreateInfoEXT((VkPipelineColorBlendAdvancedStateCreateInfoEXT *) pNext, "VkPipelineColorBlendAdvancedStateCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO:print_VkImageFormatListCreateInfo((VkImageFormatListCreateInfo *) pNext, "VkImageFormatListCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES:print_VkPhysicalDeviceMaintenance3Properties((VkPhysicalDeviceMaintenance3Properties *) pNext, "VkPhysicalDeviceMaintenance3Properties", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES:print_VkPhysicalDeviceShaderDrawParametersFeatures((VkPhysicalDeviceShaderDrawParametersFeatures *) pNext, "VkPhysicalDeviceShaderDrawParametersFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES:print_VkPhysicalDeviceShaderFloat16Int8Features((VkPhysicalDeviceShaderFloat16Int8Features *) pNext, "VkPhysicalDeviceShaderFloat16Int8Features", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES:print_VkPhysicalDeviceFloatControlsProperties((VkPhysicalDeviceFloatControlsProperties *) pNext, "VkPhysicalDeviceFloatControlsProperties", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES:print_VkPhysicalDeviceHostQueryResetFeatures((VkPhysicalDeviceHostQueryResetFeatures *) pNext, "VkPhysicalDeviceHostQueryResetFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT:print_VkDeviceQueueGlobalPriorityCreateInfoEXT((VkDeviceQueueGlobalPriorityCreateInfoEXT *) pNext, "VkDeviceQueueGlobalPriorityCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT:print_VkDebugUtilsMessengerCreateInfoEXT((VkDebugUtilsMessengerCreateInfoEXT *) pNext, "VkDebugUtilsMessengerCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT:print_VkImportMemoryHostPointerInfoEXT((VkImportMemoryHostPointerInfoEXT *) pNext, "VkImportMemoryHostPointerInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT:print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT((VkPhysicalDeviceExternalMemoryHostPropertiesEXT *) pNext, "VkPhysicalDeviceExternalMemoryHostPropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT:print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT((VkPhysicalDeviceConservativeRasterizationPropertiesEXT *) pNext, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT:print_VkPipelineRasterizationConservativeStateCreateInfoEXT((VkPipelineRasterizationConservativeStateCreateInfoEXT *) pNext, "VkPipelineRasterizationConservativeStateCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES:print_VkPhysicalDeviceDescriptorIndexingFeatures((VkPhysicalDeviceDescriptorIndexingFeatures *) pNext, "VkPhysicalDeviceDescriptorIndexingFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES:print_VkPhysicalDeviceDescriptorIndexingProperties((VkPhysicalDeviceDescriptorIndexingProperties *) pNext, "VkPhysicalDeviceDescriptorIndexingProperties", true);
+             break;
+             case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO:print_VkDescriptorSetLayoutBindingFlagsCreateInfo((VkDescriptorSetLayoutBindingFlagsCreateInfo *) pNext, "VkDescriptorSetLayoutBindingFlagsCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO:print_VkDescriptorSetVariableDescriptorCountAllocateInfo((VkDescriptorSetVariableDescriptorCountAllocateInfo *) pNext, "VkDescriptorSetVariableDescriptorCountAllocateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT:print_VkDescriptorSetVariableDescriptorCountLayoutSupport((VkDescriptorSetVariableDescriptorCountLayoutSupport *) pNext, "VkDescriptorSetVariableDescriptorCountLayoutSupport", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES:print_VkPhysicalDeviceTimelineSemaphoreFeatures((VkPhysicalDeviceTimelineSemaphoreFeatures *) pNext, "VkPhysicalDeviceTimelineSemaphoreFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES:print_VkPhysicalDeviceTimelineSemaphoreProperties((VkPhysicalDeviceTimelineSemaphoreProperties *) pNext, "VkPhysicalDeviceTimelineSemaphoreProperties", true);
+             break;
+             case VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO:print_VkSemaphoreTypeCreateInfo((VkSemaphoreTypeCreateInfo *) pNext, "VkSemaphoreTypeCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO:print_VkTimelineSemaphoreSubmitInfo((VkTimelineSemaphoreSubmitInfo *) pNext, "VkTimelineSemaphoreSubmitInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT:print_VkPipelineVertexInputDivisorStateCreateInfoEXT((VkPipelineVertexInputDivisorStateCreateInfoEXT *) pNext, "VkPipelineVertexInputDivisorStateCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT:print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT((VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT *) pNext, "VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT:print_VkPhysicalDevicePCIBusInfoPropertiesEXT((VkPhysicalDevicePCIBusInfoPropertiesEXT *) pNext, "VkPhysicalDevicePCIBusInfoPropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES:print_VkPhysicalDevice8BitStorageFeatures((VkPhysicalDevice8BitStorageFeatures *) pNext, "VkPhysicalDevice8BitStorageFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES:print_VkPhysicalDeviceVulkanMemoryModelFeatures((VkPhysicalDeviceVulkanMemoryModelFeatures *) pNext, "VkPhysicalDeviceVulkanMemoryModelFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES:print_VkPhysicalDeviceShaderAtomicInt64Features((VkPhysicalDeviceShaderAtomicInt64Features *) pNext, "VkPhysicalDeviceShaderAtomicInt64Features", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT:print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT((VkPhysicalDeviceShaderAtomicFloatFeaturesEXT *) pNext, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT:print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT((VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT *) pNext, "VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES:print_VkPhysicalDeviceDepthStencilResolveProperties((VkPhysicalDeviceDepthStencilResolveProperties *) pNext, "VkPhysicalDeviceDepthStencilResolveProperties", true);
+             break;
+             case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE:print_VkSubpassDescriptionDepthStencilResolve((VkSubpassDescriptionDepthStencilResolve *) pNext, "VkSubpassDescriptionDepthStencilResolve", true);
+             break;
+             case VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT:print_VkImageViewASTCDecodeModeEXT((VkImageViewASTCDecodeModeEXT *) pNext, "VkImageViewASTCDecodeModeEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT:print_VkPhysicalDeviceASTCDecodeFeaturesEXT((VkPhysicalDeviceASTCDecodeFeaturesEXT *) pNext, "VkPhysicalDeviceASTCDecodeFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT:print_VkDrmFormatModifierPropertiesListEXT((VkDrmFormatModifierPropertiesListEXT *) pNext, "VkDrmFormatModifierPropertiesListEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT:print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT((VkPhysicalDeviceImageDrmFormatModifierInfoEXT *) pNext, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT:print_VkImageDrmFormatModifierListCreateInfoEXT((VkImageDrmFormatModifierListCreateInfoEXT *) pNext, "VkImageDrmFormatModifierListCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT:print_VkImageDrmFormatModifierExplicitCreateInfoEXT((VkImageDrmFormatModifierExplicitCreateInfoEXT *) pNext, "VkImageDrmFormatModifierExplicitCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO:print_VkImageStencilUsageCreateInfo((VkImageStencilUsageCreateInfo *) pNext, "VkImageStencilUsageCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES:print_VkPhysicalDeviceScalarBlockLayoutFeatures((VkPhysicalDeviceScalarBlockLayoutFeatures *) pNext, "VkPhysicalDeviceScalarBlockLayoutFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES:print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures((VkPhysicalDeviceUniformBufferStandardLayoutFeatures *) pNext, "VkPhysicalDeviceUniformBufferStandardLayoutFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT:print_VkPhysicalDeviceDepthClipEnableFeaturesEXT((VkPhysicalDeviceDepthClipEnableFeaturesEXT *) pNext, "VkPhysicalDeviceDepthClipEnableFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT:print_VkPipelineRasterizationDepthClipStateCreateInfoEXT((VkPipelineRasterizationDepthClipStateCreateInfoEXT *) pNext, "VkPipelineRasterizationDepthClipStateCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT:print_VkPhysicalDeviceMemoryBudgetPropertiesEXT((VkPhysicalDeviceMemoryBudgetPropertiesEXT *) pNext, "VkPhysicalDeviceMemoryBudgetPropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES:print_VkPhysicalDeviceBufferDeviceAddressFeatures((VkPhysicalDeviceBufferDeviceAddressFeatures *) pNext, "VkPhysicalDeviceBufferDeviceAddressFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO:print_VkBufferOpaqueCaptureAddressCreateInfo((VkBufferOpaqueCaptureAddressCreateInfo *) pNext, "VkBufferOpaqueCaptureAddressCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT:print_VkPhysicalDeviceImageViewImageFormatInfoEXT((VkPhysicalDeviceImageViewImageFormatInfoEXT *) pNext, "VkPhysicalDeviceImageViewImageFormatInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT:print_VkFilterCubicImageViewImageFormatPropertiesEXT((VkFilterCubicImageViewImageFormatPropertiesEXT *) pNext, "VkFilterCubicImageViewImageFormatPropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES:print_VkPhysicalDeviceImagelessFramebufferFeatures((VkPhysicalDeviceImagelessFramebufferFeatures *) pNext, "VkPhysicalDeviceImagelessFramebufferFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO:print_VkFramebufferAttachmentsCreateInfo((VkFramebufferAttachmentsCreateInfo *) pNext, "VkFramebufferAttachmentsCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO:print_VkRenderPassAttachmentBeginInfo((VkRenderPassAttachmentBeginInfo *) pNext, "VkRenderPassAttachmentBeginInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT:print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT((VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT *) pNext, "VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT:print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT((VkPhysicalDeviceYcbcrImageArraysFeaturesEXT *) pNext, "VkPhysicalDeviceYcbcrImageArraysFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR:print_VkPhysicalDevicePerformanceQueryFeaturesKHR((VkPhysicalDevicePerformanceQueryFeaturesKHR *) pNext, "VkPhysicalDevicePerformanceQueryFeaturesKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR:print_VkPhysicalDevicePerformanceQueryPropertiesKHR((VkPhysicalDevicePerformanceQueryPropertiesKHR *) pNext, "VkPhysicalDevicePerformanceQueryPropertiesKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR:print_VkQueryPoolPerformanceCreateInfoKHR((VkQueryPoolPerformanceCreateInfoKHR *) pNext, "VkQueryPoolPerformanceCreateInfoKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR:print_VkPerformanceQuerySubmitInfoKHR((VkPerformanceQuerySubmitInfoKHR *) pNext, "VkPerformanceQuerySubmitInfoKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_RESERVATION_INFO_KHR:print_VkPerformanceQueryReservationInfoKHR((VkPerformanceQueryReservationInfoKHR *) pNext, "VkPerformanceQueryReservationInfoKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR:print_VkPhysicalDeviceShaderClockFeaturesKHR((VkPhysicalDeviceShaderClockFeaturesKHR *) pNext, "VkPhysicalDeviceShaderClockFeaturesKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT:print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT((VkPhysicalDeviceIndexTypeUint8FeaturesEXT *) pNext, "VkPhysicalDeviceIndexTypeUint8FeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT:print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT((VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT *) pNext, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES:print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures((VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures *) pNext, "VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures", true);
+             break;
+             case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT:print_VkAttachmentReferenceStencilLayout((VkAttachmentReferenceStencilLayout *) pNext, "VkAttachmentReferenceStencilLayout", true);
+             break;
+             case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT:print_VkAttachmentDescriptionStencilLayout((VkAttachmentDescriptionStencilLayout *) pNext, "VkAttachmentDescriptionStencilLayout", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT((VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT *) pNext, "VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT((VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT *) pNext, "VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT:print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT((VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT *) pNext, "VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT:print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT((VkPhysicalDeviceSubgroupSizeControlFeaturesEXT *) pNext, "VkPhysicalDeviceSubgroupSizeControlFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT:print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT((VkPhysicalDeviceSubgroupSizeControlPropertiesEXT *) pNext, "VkPhysicalDeviceSubgroupSizeControlPropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT:print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT((VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT *) pNext, "VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO:print_VkMemoryOpaqueCaptureAddressAllocateInfo((VkMemoryOpaqueCaptureAddressAllocateInfo *) pNext, "VkMemoryOpaqueCaptureAddressAllocateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT:print_VkPhysicalDeviceLineRasterizationFeaturesEXT((VkPhysicalDeviceLineRasterizationFeaturesEXT *) pNext, "VkPhysicalDeviceLineRasterizationFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT:print_VkPhysicalDeviceLineRasterizationPropertiesEXT((VkPhysicalDeviceLineRasterizationPropertiesEXT *) pNext, "VkPhysicalDeviceLineRasterizationPropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT:print_VkPipelineRasterizationLineStateCreateInfoEXT((VkPipelineRasterizationLineStateCreateInfoEXT *) pNext, "VkPipelineRasterizationLineStateCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES:print_VkPhysicalDeviceVulkan11Features((VkPhysicalDeviceVulkan11Features *) pNext, "VkPhysicalDeviceVulkan11Features", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES:print_VkPhysicalDeviceVulkan11Properties((VkPhysicalDeviceVulkan11Properties *) pNext, "VkPhysicalDeviceVulkan11Properties", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES:print_VkPhysicalDeviceVulkan12Features((VkPhysicalDeviceVulkan12Features *) pNext, "VkPhysicalDeviceVulkan12Features", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES:print_VkPhysicalDeviceVulkan12Properties((VkPhysicalDeviceVulkan12Properties *) pNext, "VkPhysicalDeviceVulkan12Properties", true);
+             break;
+             case VK_STRUCTURE_TYPE_FAULT_CALLBACK_INFO:print_VkFaultCallbackInfo((VkFaultCallbackInfo *) pNext, "VkFaultCallbackInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT:print_VkSamplerCustomBorderColorCreateInfoEXT((VkSamplerCustomBorderColorCreateInfoEXT *) pNext, "VkSamplerCustomBorderColorCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT:print_VkPhysicalDeviceCustomBorderColorPropertiesEXT((VkPhysicalDeviceCustomBorderColorPropertiesEXT *) pNext, "VkPhysicalDeviceCustomBorderColorPropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT:print_VkPhysicalDeviceCustomBorderColorFeaturesEXT((VkPhysicalDeviceCustomBorderColorFeaturesEXT *) pNext, "VkPhysicalDeviceCustomBorderColorFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT:print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT((VkPhysicalDeviceExtendedDynamicStateFeaturesEXT *) pNext, "VkPhysicalDeviceExtendedDynamicStateFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT((VkPhysicalDeviceExtendedDynamicState2FeaturesEXT *) pNext, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PIPELINE_OFFLINE_CREATE_INFO:print_VkPipelineOfflineCreateInfo((VkPipelineOfflineCreateInfo *) pNext, "VkPipelineOfflineCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT:print_VkPhysicalDeviceRobustness2FeaturesEXT((VkPhysicalDeviceRobustness2FeaturesEXT *) pNext, "VkPhysicalDeviceRobustness2FeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT:print_VkPhysicalDeviceRobustness2PropertiesEXT((VkPhysicalDeviceRobustness2PropertiesEXT *) pNext, "VkPhysicalDeviceRobustness2PropertiesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT:print_VkPhysicalDeviceImageRobustnessFeaturesEXT((VkPhysicalDeviceImageRobustnessFeaturesEXT *) pNext, "VkPhysicalDeviceImageRobustnessFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT:print_VkPhysicalDevice4444FormatsFeaturesEXT((VkPhysicalDevice4444FormatsFeaturesEXT *) pNext, "VkPhysicalDevice4444FormatsFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT:print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT((VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT *) pNext, "VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:print_VkFragmentShadingRateAttachmentInfoKHR((VkFragmentShadingRateAttachmentInfoKHR *) pNext, "VkFragmentShadingRateAttachmentInfoKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR:print_VkPipelineFragmentShadingRateStateCreateInfoKHR((VkPipelineFragmentShadingRateStateCreateInfoKHR *) pNext, "VkPipelineFragmentShadingRateStateCreateInfoKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR:print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR((VkPhysicalDeviceFragmentShadingRateFeaturesKHR *) pNext, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR:print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR((VkPhysicalDeviceFragmentShadingRatePropertiesKHR *) pNext, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR:print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR((VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR *) pNext, "VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT((VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT *) pNext, "VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:print_VkPhysicalDeviceColorWriteEnableFeaturesEXT((VkPhysicalDeviceColorWriteEnableFeaturesEXT *) pNext, "VkPhysicalDeviceColorWriteEnableFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:print_VkPipelineColorWriteCreateInfoEXT((VkPipelineColorWriteCreateInfoEXT *) pNext, "VkPipelineColorWriteCreateInfoEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:print_VkMemoryBarrier2KHR((VkMemoryBarrier2KHR *) pNext, "VkMemoryBarrier2KHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:print_VkQueueFamilyCheckpointProperties2NV((VkQueueFamilyCheckpointProperties2NV *) pNext, "VkQueueFamilyCheckpointProperties2NV", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:print_VkPhysicalDeviceSynchronization2FeaturesKHR((VkPhysicalDeviceSynchronization2FeaturesKHR *) pNext, "VkPhysicalDeviceSynchronization2FeaturesKHR", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_PROPERTIES:print_VkPhysicalDeviceVulkanSC10Properties((VkPhysicalDeviceVulkanSC10Properties *) pNext, "VkPhysicalDeviceVulkanSC10Properties", true);
+             break;
+             case VK_STRUCTURE_TYPE_DEVICE_OBJECT_RESERVATION_CREATE_INFO:print_VkDeviceObjectReservationCreateInfo((VkDeviceObjectReservationCreateInfo *) pNext, "VkDeviceObjectReservationCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_RESERVATION_CREATE_INFO:print_VkCommandPoolMemoryReservationCreateInfo((VkCommandPoolMemoryReservationCreateInfo *) pNext, "VkCommandPoolMemoryReservationCreateInfo", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_FEATURES:print_VkPhysicalDeviceVulkanSC10Features((VkPhysicalDeviceVulkanSC10Features *) pNext, "VkPhysicalDeviceVulkanSC10Features", true);
+             break;
+             case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT((VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT *) pNext, "VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT", true);
+             break;
+             case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:print_VkDrmFormatModifierPropertiesList2EXT((VkDrmFormatModifierPropertiesList2EXT *) pNext, "VkDrmFormatModifierPropertiesList2EXT", true);
+             break;
+             default: assert(false); // No structure type matching
+         }
+     }
+  }
+
+}//End of namespace vk_json
 
-#endif // _VULKAN_JSON_DATA_HPP
+#endif // _VULKAN_JSON_DATA_HPP
\ No newline at end of file
index f1ada04..e8b1165 100644 (file)
@@ -1,7 +1,6 @@
 #ifndef _VULKAN_JSON_PARSER_HPP
 #define _VULKAN_JSON_PARSER_HPP
 
-
 /*
  * Copyright (c) 2021 The Khronos Group Inc.
  *
@@ -42,70 +41,73 @@ namespace vk_json_parser {
 
 template <typename T1, typename T2>
 class GlobalMem {
+    void grow() {
+        //push_back new single vector of size m_tabSize onto vec
+        void * p = calloc(m_tabSize, sizeof(T2));
+        assert(p);
+        m_vec.push_back(p);
+        m_pointer = 0U;
+    }
+    void * alloc(T1 size) {
+        void* result = static_cast<deUint8 *>(m_vec.back()) + m_pointer;
+        m_pointer += size;
+        return result;
+    }
 public:
 
     GlobalMem(T1 tabSize_ = 32768U)
       : m_tabSize(tabSize_), m_pointer(0U)
     {
-        // push_back a single vector of size m_tabSize onto vec
-        std::vector<T2> each_vec(m_tabSize, 0U);
-        m_vec.push_back(each_vec);
+        grow();
     }
 
     void* allocate (T1 size)
     {
-        if (m_pointer+size >= m_tabSize)
-        {
-            //push_back new single vector of size m_tabSize onto vec
-            std::vector<T2> each_vec(m_tabSize, 0U);
-            m_vec.push_back(each_vec);
-            m_pointer = 0U;
+        if (m_pointer+size >= m_tabSize) {
+            grow();
         }
-        void* result = m_vec.back().data() + m_pointer;
-        m_pointer += size;
-        return result;
-     }
+        return alloc(size);
+    }
 
-     void* allocate (T1 count, T1 size)
+    void* allocate (T1 count, T1 size)
     {
         T1 totalSize = count * size;
         if (m_pointer+totalSize >= m_tabSize)
         {
-            //push_back new single vector of size m_tabSize onto vec
-            std::vector<T2> each_vec(m_tabSize, 0U);
-            m_vec.push_back(each_vec);
-            m_pointer = 0U;
+            grow();
         }
-        void* result = m_vec.back().data() + m_pointer;
-        m_pointer += totalSize;
-        return result;
-     }
-
-     // deallocates all memory. Any use of earlier allocated elements is forbidden
-     void clear()
-     {
-         // remove all vectors from vec excluding the one with index 0
-         for (size_t i=1 ; i<m_vec.size(); i++) {
-             m_vec[i].clear();
-         }
-         m_pointer = 0;
-     }
+        return alloc(totalSize);
+    }
+    // deallocates all memory. Any use of earlier allocated elements is forbidden
+    void clear()
+    {
+        // remove all vectors from vec excluding the one with index 0
+        for (size_t i=1 ; i<m_vec.size(); i++) {
+            free(m_vec[i]);
+        }
+        m_vec.resize(1);
+        m_pointer = 0;
+    }
 
     ~GlobalMem()
     {
-        for (auto& it : m_vec) {
-            it.clear();
-        }
-        m_vec.clear();
+        clear();
+        free(m_vec[0]);
     }
 
 private:
-    std::vector< std::vector<T2> > m_vec;
+    std::vector< void * > m_vec;
     T1 m_tabSize;
     T1 m_pointer;
 };
 
+#if defined(USE_THREAD_LOCAL_WAR)
+// Workaround (off by default) for certain platforms that have a thread_local libc bug
+vk_json_parser::GlobalMem<deUint32, deUint8> & TLSGetGlobalMem();
+#define s_globalMem TLSGetGlobalMem()
+#else
 static thread_local GlobalMem<deUint32, deUint8> s_globalMem(32768U);
+#endif
 
 // To make sure the generated data is consistent across platforms,
 // we typecast to 32-bit.
@@ -211,6 +213,8 @@ static void parse_float(const char* s, Json::Value& obj, float& o)
      if (obj.isString())
           if (obj.asString() == "VK_LOD_CLAMP_NONE")
                o = 1000.0F;
+          else if (obj.asString() == "NaN")
+               o = std::numeric_limits<float>::quiet_NaN();
           else
                assert(false);
      else
@@ -673,6 +677,7 @@ static void parse_VkSurfaceFormatKHR(const char* s, Json::Value& obj, VkSurfaceF
 static void parse_VkSwapchainCreateInfoKHR(const char* s, Json::Value& obj, VkSwapchainCreateInfoKHR& o);
 static void parse_VkPresentInfoKHR(const char* s, Json::Value& obj, VkPresentInfoKHR& o);
 static void parse_VkValidationFeaturesEXT(const char* s, Json::Value& obj, VkValidationFeaturesEXT& o);
+static void parse_VkApplicationParametersEXT(const char* s, Json::Value& obj, VkApplicationParametersEXT& o);
 static void parse_VkPhysicalDeviceFeatures2(const char* s, Json::Value& obj, VkPhysicalDeviceFeatures2& o);
 static void parse_VkPhysicalDeviceProperties2(const char* s, Json::Value& obj, VkPhysicalDeviceProperties2& o);
 static void parse_VkFormatProperties2(const char* s, Json::Value& obj, VkFormatProperties2& o);
@@ -966,6 +971,12 @@ void* parsePNextChain(Json::Value& obj) {
                 parse_VkValidationFeaturesEXT("", pNextObj, *((VkValidationFeaturesEXT*)p));
              }
              break;
+             case VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT:
+             {
+                p = s_globalMem.allocate(sizeof(VkApplicationParametersEXT));
+                parse_VkApplicationParametersEXT("", pNextObj, *((VkApplicationParametersEXT*)p));
+             }
+             break;
              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2:
              {
                 p = s_globalMem.allocate(sizeof(VkPhysicalDeviceFeatures2));
@@ -1963,7 +1974,7 @@ static void parse_VkDeviceAddress(const char* s, Json::Value& obj, VkDeviceAddre
 static void parse_VkDeviceSize(const char* s, Json::Value& obj, VkDeviceSize& o) {
      std::string _res = obj.asString();
      if (_res == "VK_WHOLE_SIZE")
-          o = VK_WHOLE_SIZE;
+          o = (~0ULL);
      else
           sscanf(_res.c_str(), "%" SCNu64, &o);
 }
@@ -2102,6 +2113,7 @@ static std::map<std::string, int> VkResult_map = {
     std::make_pair("VK_ERROR_INVALID_EXTERNAL_HANDLE", 1000072003),
     std::make_pair("VK_ERROR_FRAGMENTATION", 1000161000),
     std::make_pair("VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS", 1000257000),
+    std::make_pair("VK_ERROR_VALIDATION_FAILED", 1000011001),
     std::make_pair("VK_ERROR_INVALID_PIPELINE_CACHE_DATA", 1000298000),
     std::make_pair("VK_ERROR_NO_PIPELINE_MATCH", 1000298001),
     std::make_pair("VK_ERROR_SURFACE_LOST_KHR", 1000000000),
@@ -2109,7 +2121,6 @@ static std::map<std::string, int> VkResult_map = {
     std::make_pair("VK_SUBOPTIMAL_KHR", 1000001003),
     std::make_pair("VK_ERROR_OUT_OF_DATE_KHR", 1000001004),
     std::make_pair("VK_ERROR_INCOMPATIBLE_DISPLAY_KHR", 1000003001),
-    std::make_pair("VK_ERROR_VALIDATION_FAILED_EXT", 1000011001),
     std::make_pair("VK_ERROR_INVALID_SHADER_NV", 1000012000),
     std::make_pair("VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT", 1000158000),
     std::make_pair("VK_ERROR_NOT_PERMITTED_EXT", 1000174001),
@@ -2133,7 +2144,6 @@ static std::map<std::string, int> VkStructureType_map = {
     std::make_pair("VK_STRUCTURE_TYPE_SUBMIT_INFO", 4),
     std::make_pair("VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO", 5),
     std::make_pair("VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE", 6),
-    std::make_pair("VK_STRUCTURE_TYPE_BIND_SPARSE_INFO", 7),
     std::make_pair("VK_STRUCTURE_TYPE_FENCE_CREATE_INFO", 8),
     std::make_pair("VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO", 9),
     std::make_pair("VK_STRUCTURE_TYPE_EVENT_CREATE_INFO", 10),
@@ -2142,7 +2152,6 @@ static std::map<std::string, int> VkStructureType_map = {
     std::make_pair("VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO", 13),
     std::make_pair("VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO", 14),
     std::make_pair("VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO", 15),
-    std::make_pair("VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO", 16),
     std::make_pair("VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO", 17),
     std::make_pair("VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO", 18),
     std::make_pair("VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO", 19),
@@ -2354,6 +2363,8 @@ static std::map<std::string, int> VkStructureType_map = {
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT", 1000038006),
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT", 1000038007),
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT", 1000038008),
+    std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT", 1000038009),
+    std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT", 1000038010),
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT", 1000039000),
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT", 1000039001),
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT", 1000039002),
@@ -2364,6 +2375,8 @@ static std::map<std::string, int> VkStructureType_map = {
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT", 1000039007),
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT", 1000039008),
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_EXT", 1000039009),
+    std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT", 1000039010),
+    std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT", 1000039011),
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT", 1000040000),
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT", 1000040001),
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT", 1000040002),
@@ -2666,6 +2679,7 @@ static std::map<std::string, int> VkStructureType_map = {
     std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT", 1000297000),
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR", 1000299000),
     std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR", 1000299001),
+    std::make_pair("VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR", 1000299002),
     std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV", 1000300000),
     std::make_pair("VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV", 1000300001),
     std::make_pair("VK_STRUCTURE_TYPE_REFRESH_OBJECT_LIST_KHR", 1000308000),
@@ -2706,6 +2720,7 @@ static std::map<std::string, int> VkStructureType_map = {
     std::make_pair("VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR", 1000337009),
     std::make_pair("VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR", 1000337010),
     std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT", 1000340000),
+    std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM", 1000342000),
     std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT", 1000344000),
     std::make_pair("VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT", 1000346000),
     std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE", 1000351000),
@@ -2714,6 +2729,8 @@ static std::map<std::string, int> VkStructureType_map = {
     std::make_pair("VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT", 1000352001),
     std::make_pair("VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT", 1000352002),
     std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT", 1000353000),
+    std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT", 1000355000),
+    std::make_pair("VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT", 1000355001),
     std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT", 1000356000),
     std::make_pair("VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR", 1000360000),
     std::make_pair("VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA", 1000364000),
@@ -2743,6 +2760,8 @@ static std::map<std::string, int> VkStructureType_map = {
     std::make_pair("VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT", 1000381001),
     std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT", 1000388000),
     std::make_pair("VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT", 1000388001),
+    std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT", 1000391000),
+    std::make_pair("VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT", 1000391001),
     std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT", 1000392000),
     std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT", 1000392001),
     std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT", 1000411000),
@@ -2752,6 +2771,7 @@ static std::map<std::string, int> VkStructureType_map = {
     std::make_pair("VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR", 1000413001),
     std::make_pair("VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR", 1000413002),
     std::make_pair("VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR", 1000413003),
+    std::make_pair("VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT", 1000435000),
 };
 static void parse_VkStructureType(const char* s, Json::Value& obj, VkStructureType& o) {
      std::string _res = obj.asString();
@@ -2840,6 +2860,7 @@ static std::map<std::string, int> VkImageAspectFlagBits_map = {
     std::make_pair("VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT", 1UL << 8),
     std::make_pair("VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT", 1UL << 9),
     std::make_pair("VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT", 1UL << 10),
+    std::make_pair("VK_IMAGE_ASPECT_NONE_KHR", 0),
 };
 static void parse_VkImageAspectFlagBits(const char* s, Json::Value& obj, VkImageAspectFlagBits& o) {
      std::string _res = obj.asString();
@@ -2862,7 +2883,6 @@ static std::map<std::string, int> VkObjectType_map = {
     std::make_pair("VK_OBJECT_TYPE_QUERY_POOL", 12),
     std::make_pair("VK_OBJECT_TYPE_BUFFER_VIEW", 13),
     std::make_pair("VK_OBJECT_TYPE_IMAGE_VIEW", 14),
-    std::make_pair("VK_OBJECT_TYPE_SHADER_MODULE", 15),
     std::make_pair("VK_OBJECT_TYPE_PIPELINE_CACHE", 16),
     std::make_pair("VK_OBJECT_TYPE_PIPELINE_LAYOUT", 17),
     std::make_pair("VK_OBJECT_TYPE_RENDER_PASS", 18),
@@ -3390,7 +3410,6 @@ static std::map<std::string, int> VkQueueFlagBits_map = {
     std::make_pair("VK_QUEUE_GRAPHICS_BIT", 1UL << 0),
     std::make_pair("VK_QUEUE_COMPUTE_BIT", 1UL << 1),
     std::make_pair("VK_QUEUE_TRANSFER_BIT", 1UL << 2),
-    std::make_pair("VK_QUEUE_SPARSE_BINDING_BIT", 1UL << 3),
     std::make_pair("VK_QUEUE_PROTECTED_BIT", 1UL << 4),
     std::make_pair("VK_QUEUE_VIDEO_DECODE_BIT_KHR", 1UL << 5),
     std::make_pair("VK_QUEUE_VIDEO_ENCODE_BIT_KHR", 1UL << 6),
@@ -3718,11 +3737,10 @@ static void parse_VkCompareOp(const char* s, Json::Value& obj, VkCompareOp& o) {
 static std::map<std::string, int> VkPipelineCreateFlagBits_map = {
     std::make_pair("VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT", 1UL << 0),
     std::make_pair("VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT", 1UL << 1),
-    std::make_pair("VK_PIPELINE_CREATE_DERIVATIVE_BIT", 1UL << 2),
     std::make_pair("VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT", 1UL << 3),
     std::make_pair("VK_PIPELINE_CREATE_DISPATCH_BASE_BIT", 1UL << 4),
-    std::make_pair("VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR", 1UL << 21),
-    std::make_pair("VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT", 1UL << 22),
+    std::make_pair("VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR", 1UL << 21),
+    std::make_pair("VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT", 1UL << 22),
     std::make_pair("VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR", 1UL << 14),
     std::make_pair("VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR", 1UL << 15),
     std::make_pair("VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR", 1UL << 16),
@@ -4095,6 +4113,9 @@ static std::map<std::string, int> VkSubpassDescriptionFlagBits_map = {
     std::make_pair("VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX", 1UL << 1),
     std::make_pair("VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM", 1UL << 2),
     std::make_pair("VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM", 1UL << 3),
+    std::make_pair("VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM", 1UL << 4),
+    std::make_pair("VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM", 1UL << 5),
+    std::make_pair("VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM", 1UL << 6),
 };
 static void parse_VkSubpassDescriptionFlagBits(const char* s, Json::Value& obj, VkSubpassDescriptionFlagBits& o) {
      std::string _res = obj.asString();
@@ -4112,7 +4133,7 @@ static void parse_VkCommandPoolCreateFlagBits(const char* s, Json::Value& obj, V
 }
 
 static std::map<std::string, int> VkCommandPoolResetFlagBits_map = {
-    std::make_pair("VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT", 1UL << 0),
+    std::make_pair("VK_COMMAND_POOL_RESET_RESERVED_1_BIT_COREAVI", 1UL << 1),
 };
 static void parse_VkCommandPoolResetFlagBits(const char* s, Json::Value& obj, VkCommandPoolResetFlagBits& o) {
      std::string _res = obj.asString();
@@ -8328,6 +8349,7 @@ static std::map<std::string, int> VkDriverId_map = {
     std::make_pair("VK_DRIVER_ID_MESA_TURNIP", 18),
     std::make_pair("VK_DRIVER_ID_MESA_V3DV", 19),
     std::make_pair("VK_DRIVER_ID_MESA_PANVK", 20),
+    std::make_pair("VK_DRIVER_ID_SAMSUNG_PROPRIETARY", 21),
 };
 static void parse_VkDriverId(const char* s, Json::Value& obj, VkDriverId& o) {
      std::string _res = obj.asString();
@@ -11105,6 +11127,7 @@ static std::map<std::string, deUint64> VkAccessFlagBits2KHR_map = {
     std::make_pair("VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR", 1ULL << 22),
     std::make_pair("VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT", 1ULL << 24),
     std::make_pair("VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT", 1ULL << 19),
+    std::make_pair("VK_ACCESS_2_RESERVED_41_BIT_AMD", 1ULL << 41),
     std::make_pair("VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI", 1ULL << 39),
     std::make_pair("VK_ACCESS_2_RESERVED_387_BIT_KHR", 1ULL << 40),
 };
@@ -12334,7 +12357,7 @@ static void parse_VkFormatFeatureFlags2KHR(const char* s, Json::Value& obj, VkFo
      if (obj.isString()) {
           std::string _res = obj.asString();
           sscanf(_res.c_str(), "%" SCNd64, &o);
-        }
+     }
      else {
           o = obj.asUInt();
      }
@@ -13107,7 +13130,22 @@ static void parse_VkPipelineColorWriteCreateInfoEXT(const char* s, Json::Value&
 
 }
 
-}//End of namespace vk_json_parser
+static void parse_VkApplicationParametersEXT(const char* s, Json::Value& obj, VkApplicationParametersEXT& o) {
+
+     parse_VkStructureType("sType", obj["sType"], (o.sType));
 
+     o.pNext = (VkApplicationParametersEXT*)parsePNextChain(obj);
+
+     parse_uint32_t("vendorID", obj["vendorID"], (o.vendorID));
+
+     parse_uint32_t("deviceID", obj["deviceID"], (o.deviceID));
+
+     parse_uint32_t("key", obj["key"], (o.key));
+
+     parse_uint64_t("value", obj["value"], (o.value));
+
+}
+
+}//End of namespace vk_json_parser
 
-#endif // _VULKAN_JSON_PARSER_HPP
+#endif // _VULKAN_JSON_PARSER_HPP
\ No newline at end of file
index 229c595..18627e1 100644 (file)
@@ -206,12 +206,17 @@ typedef VKAPI_ATTR void           (VKAPI_CALL *PFN_vkFaultCallbackFunction)                       (VkBool32
 
 #ifdef CTS_USES_VULKANSC
 
+// substitute required enums and structs removed from VulkanSC specification
+
 enum VkShaderModuleCreateFlagBits
 {
        VK_SHADER_MODULE_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF,
 };
 typedef deUint32 VkShaderModuleCreateFlags;
 
+#define VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO VkStructureType(16)
+#define VK_OBJECT_TYPE_SHADER_MODULE VkObjectType(15)
+
 struct VkShaderModuleCreateInfo
 {
        VkStructureType                         sType;
index e59bbd4..adeefd1 100644 (file)
@@ -416,6 +416,7 @@ tcu::TestStatus createPoolResetBitTest(Context& context)
        return tcu::TestStatus::pass("Command Pool allocated correctly.");
 }
 
+#ifndef CTS_USES_VULKANSC
 tcu::TestStatus resetPoolReleaseResourcesBitTest(Context& context)
 {
        const VkDevice                                                  vkDevice                                = context.getDevice();
@@ -436,6 +437,7 @@ tcu::TestStatus resetPoolReleaseResourcesBitTest(Context& context)
 
        return tcu::TestStatus::pass("Command Pool allocated correctly.");
 }
+#endif // CTS_USES_VULKANSC
 
 tcu::TestStatus resetPoolNoFlagsTest(Context& context)
 {
@@ -481,6 +483,7 @@ bool executeCommandBuffer (const VkDevice                   device,
        return result == VK_EVENT_SET;
 }
 
+#ifndef CTS_USES_VULKANSC
 tcu::TestStatus resetPoolReuseTest (Context& context)
 {
        const VkDevice                                          vkDevice                        = context.getDevice();
@@ -536,6 +539,7 @@ tcu::TestStatus resetPoolReuseTest (Context& context)
 
        return tcu::TestStatus::pass("Passed");
 }
+#endif // CTS_USES_VULKANSC
 
 /******** 19.2. Command Buffer Lifetime (5.2 in VK 1.0 Spec) ******************/
 tcu::TestStatus allocatePrimaryBufferTest(Context& context)
@@ -4865,9 +4869,13 @@ tcu::TestCaseGroup* createCommandBuffersTests (tcu::TestContext& testCtx)
 #endif // CTS_USES_VULKANSC
        addFunctionCase                         (commandBuffersTests.get(), "pool_create_transient_bit",                "",     createPoolTransientBitTest);
        addFunctionCase                         (commandBuffersTests.get(), "pool_create_reset_bit",                    "",     createPoolResetBitTest);
+#ifndef CTS_USES_VULKANSC
        addFunctionCase                         (commandBuffersTests.get(), "pool_reset_release_res",                   "",     resetPoolReleaseResourcesBitTest);
+#endif // CTS_USES_VULKANSC
        addFunctionCase                         (commandBuffersTests.get(), "pool_reset_no_flags_res",                  "",     resetPoolNoFlagsTest);
+#ifndef CTS_USES_VULKANSC
        addFunctionCase                         (commandBuffersTests.get(), "pool_reset_reuse",                                 "",     checkEventSupport, resetPoolReuseTest);
+#endif // CTS_USES_VULKANSC
        /* 19.2. Command Buffer Lifetime (5.2 in VK 1.0 Spec) */
        addFunctionCase                         (commandBuffersTests.get(), "allocate_single_primary",                  "", allocatePrimaryBufferTest);
        addFunctionCase                         (commandBuffersTests.get(), "allocate_many_primary",                    "",     allocateManyPrimaryBuffersTest);
index 0799ce1..4d8619e 100644 (file)
@@ -2080,7 +2080,11 @@ bool GraphicsAttachmentsTestInstance::verifyDecompression (const std::vector<deU
        const VkExtent2D                                        renderSize                                      (makeExtent2D(mipmapDims.x(), mipmapDims.y()));
        const Unique<VkPipelineLayout>          pipelineLayout                          (makePipelineLayout(vk, device, *descriptorSetLayout));
        const Unique<VkPipeline>                        pipeline                                        (makeGraphicsPipeline(vk, device, *pipelineLayout, *renderPass, *vertShaderModule, *fragShaderModule, renderSize, 0u));
+#ifndef CTS_USES_VULKANSC
        const Unique<VkCommandPool>                     cmdPool                                         (createCommandPool(vk, device, VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT, queueFamilyIndex));
+#else
+       const Unique<VkCommandPool>                     cmdPool                                         (createCommandPool(vk, device, VkCommandPoolCreateFlags(0u), queueFamilyIndex));
+#endif // CTS_USES_VULKANSC
        const Unique<VkCommandBuffer>           cmdBuffer                                       (allocateCommandBuffer(vk, device, *cmdPool, VK_COMMAND_BUFFER_LEVEL_PRIMARY));
 
        const VkBufferImageCopy                         copyBufferToImageRegion         = makeBufferImageCopy(mipmapDimsBlocked.x(), mipmapDimsBlocked.y(), 0u, 0u, mipmapDimsBlocked.x(), mipmapDimsBlocked.y());
index b18c730..e008eaa 100644 (file)
@@ -375,7 +375,11 @@ void GraphicsAttachmentsTestInstance::transcode (std::vector<deUint8>& srcData,
        const VkExtent2D                                                renderSize                              (makeExtent2D(m_parameters.size[0], m_parameters.size[1]));
        const Unique<VkPipelineLayout>                  pipelineLayout                  (makePipelineLayout(vk, device, *descriptorSetLayout));
        const Unique<VkPipeline>                                pipeline                                (makeGraphicsPipeline(vk, device, *pipelineLayout, *renderPass, *vertShaderModule, *fragShaderModule, renderSize, 1u));
+#ifndef CTS_USES_VULKANSC
        const Unique<VkCommandPool>                             cmdPool                                 (createCommandPool(vk, device, VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT, queueFamilyIndex));
+#else
+       const Unique<VkCommandPool>                             cmdPool                                 (createCommandPool(vk, device, VkCommandPoolCreateFlags(0u), queueFamilyIndex));
+#endif // CTS_USES_VULKANSC
        const Unique<VkCommandBuffer>                   cmdBuffer                               (allocateCommandBuffer(vk, device, *cmdPool, VK_COMMAND_BUFFER_LEVEL_PRIMARY));
 
        const VkBufferImageCopy                                 srcCopyRegion                   = makeBufferImageCopy(m_parameters.size[0], m_parameters.size[1]);
@@ -631,7 +635,12 @@ void GraphicsTextureTestInstance::transcode (std::vector<deUint8>& srcData, std:
        const VkExtent2D                                                renderSize                              (makeExtent2D(m_parameters.size[0], m_parameters.size[1]));
        const Unique<VkPipelineLayout>                  pipelineLayout                  (makePipelineLayout(vk, device, *descriptorSetLayout));
        const Unique<VkPipeline>                                pipeline                                (makeGraphicsPipeline(vk, device, *pipelineLayout, *renderPass, *vertShaderModule, *fragShaderModule, renderSize, 0u));
+#ifndef CTS_USES_VULKANSC
        const Unique<VkCommandPool>                             cmdPool                                 (createCommandPool(vk, device, VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT, queueFamilyIndex));
+#else
+       const Unique<VkCommandPool>                             cmdPool                                 (createCommandPool(vk, device, VkCommandPoolCreateFlags(0u), queueFamilyIndex));
+#endif // CTS_USES_VULKANSC
+
        const Unique<VkCommandBuffer>                   cmdBuffer                               (allocateCommandBuffer(vk, device, *cmdPool, VK_COMMAND_BUFFER_LEVEL_PRIMARY));
 
        const VkBufferImageCopy                                 srcCopyRegion                   = makeBufferImageCopy(m_parameters.size[0], m_parameters.size[1]);
index d3a79c8..1ce3ac2 100644 (file)
@@ -9,8 +9,6 @@ set(DEQP_VK_VKSC_PIPELINE_SRCS
        vktPipelineCombinationsIterator.hpp
        vktPipelineDepthTests.cpp
        vktPipelineDepthTests.hpp
-       vktPipelineDerivativeTests.cpp
-       vktPipelineDerivativeTests.hpp
        vktPipelineDynamicOffsetTests.cpp
        vktPipelineDynamicOffsetTests.hpp
        vktPipelineEarlyDestroyTests.cpp
@@ -115,6 +113,8 @@ set(DEQP_VK_PIPELINE_SRCS
        vktPipelineCacheTests.hpp
        vktPipelineCreationFeedbackTests.cpp
        vktPipelineCreationFeedbackTests.hpp
+       vktPipelineDerivativeTests.cpp
+       vktPipelineDerivativeTests.hpp
        vktPipelineExecutablePropertiesTests.cpp
        vktPipelineExecutablePropertiesTests.hpp
        vktPipelineCreationCacheControlTests.cpp
index c99fc16..bd6e6f4 100644 (file)
@@ -262,10 +262,14 @@ std::vector<PipelineSp> makeGraphicsPipelines (const DeviceInterface&             vk,
        std::vector<VkPipeline>                                         rawPipelines                    (numSubpasses, DE_NULL);
 
        {
-               const VkPipelineCreateFlags firstPipelineFlags = (numSubpasses > 1u ? VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT
-                                                                                                                                                       : (VkPipelineCreateFlagBits)0);
+#ifndef CTS_USES_VULKANSC
+               const VkPipelineCreateFlags firstPipelineFlags  = (numSubpasses > 1u ? VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT
+                                                                                                                                                       : VkPipelineCreateFlagBits(0));
+#else
+               const VkPipelineCreateFlags firstPipelineFlags  = VkPipelineCreateFlagBits(0);
+#endif // CTS_USES_VULKANSC
 
-               VkGraphicsPipelineCreateInfo createInfo =
+               VkGraphicsPipelineCreateInfo createInfo                 =
                {
                        VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO,        // VkStructureType                                                                      sType;
                        DE_NULL,                                                                                        // const void*                                                                          pNext;
@@ -288,10 +292,12 @@ std::vector<PipelineSp> makeGraphicsPipelines (const DeviceInterface&             vk,
                        -1,                                                                                                     // deInt32                                                                                      basePipelineIndex;
                };
 
-               graphicsPipelineInfos.push_back(createInfo);
+               graphicsPipelineInfos.push_back                                 (createInfo);
 
-               createInfo.flags                                = VK_PIPELINE_CREATE_DERIVATIVE_BIT;
-               createInfo.basePipelineIndex    = 0;
+#ifndef CTS_USES_VULKANSC
+               createInfo.flags                                                                = VK_PIPELINE_CREATE_DERIVATIVE_BIT;
+               createInfo.basePipelineIndex                                    = 0;
+#endif // CTS_USES_VULKANSC
 
                for (deUint32 subpassNdx = 1u; subpassNdx < numSubpasses; ++subpassNdx)
                {
index 4ddb017..484416f 100644 (file)
@@ -47,7 +47,6 @@
 #include "vktPipelineRenderToImageTests.hpp"
 #include "vktPipelineFramebufferAttachmentTests.hpp"
 #include "vktPipelineStencilExportTests.hpp"
-#include "vktPipelineDerivativeTests.hpp"
 #include "vktPipelineCreationFeedbackTests.hpp"
 #include "vktPipelineDepthRangeUnrestrictedTests.hpp"
 #include "vktPipelineExecutablePropertiesTests.hpp"
@@ -58,6 +57,7 @@
 #ifndef CTS_USES_VULKANSC
 #include "vktPipelineCreationCacheControlTests.hpp"
 #include "vktPipelineBindPointTests.hpp"
+#include "vktPipelineDerivativeTests.hpp"
 #endif // CTS_USES_VULKANSC
 #include "vktPipelineNoPositionTests.hpp"
 #include "vktPipelineColorWriteEnableTests.hpp"
@@ -104,8 +104,8 @@ void createChildren (tcu::TestCaseGroup* pipelineTests)
        pipelineTests->addChild(createRenderToImageTests                        (testCtx));
        pipelineTests->addChild(createFramebufferAttachmentTests        (testCtx));
        pipelineTests->addChild(createStencilExportTests                        (testCtx));
-       pipelineTests->addChild(createDerivativeTests                           (testCtx));
 #ifndef CTS_USES_VULKANSC
+       pipelineTests->addChild(createDerivativeTests                           (testCtx));
        pipelineTests->addChild(createCreationFeedbackTests                     (testCtx));
 #endif // CTS_USES_VULKANSC
        pipelineTests->addChild(createDepthRangeUnrestrictedTests       (testCtx));
index 573a1e5..14eb5d3 100644 (file)
@@ -3935,7 +3935,11 @@ tcu::TestStatus vkt::subgroups::makeComputeTestRequiredSubgroupSize (Context&
                                                                                                                                                                                                *pipelineLayout,
                                                                                                                                                                                                *shaderModule,
                                                                                                                                                                                                pipelineShaderStageCreateFlags,
+#ifndef CTS_USES_VULKANSC
                                                                                                                                                                                                VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT,
+#else
+                                                                                                                                                                                               0u,
+#endif // CTS_USES_VULKANSC
                                                                                                                                                                                                (VkPipeline) DE_NULL,
                                                                                                                                                                                                localSizesToTest[0][0],
                                                                                                                                                                                                localSizesToTest[0][1],
@@ -3956,7 +3960,11 @@ tcu::TestStatus vkt::subgroups::makeComputeTestRequiredSubgroupSize (Context&
                                                                                                                                                                                                                *pipelineLayout,
                                                                                                                                                                                                                *shaderModule,
                                                                                                                                                                                                                pipelineShaderStageCreateFlags,
+#ifndef CTS_USES_VULKANSC
                                                                                                                                                                                                                VK_PIPELINE_CREATE_DERIVATIVE_BIT,
+#else
+                                                                                                                                                                                                               0u,
+#endif // CTS_USES_VULKANSC
                                                                                                                                                                                                                **pipelines[0],
                                                                                                                                                                                                                nextX,
                                                                                                                                                                                                                nextY,
index d2d57c9..1c0e808 100644 (file)
@@ -500,7 +500,11 @@ DefaultDevice::DefaultDevice (const PlatformInterface& vkPlatform, const tcu::Co
        , m_deviceExtensions                            (addCoreDeviceExtensions(filterExtensions(enumerateDeviceExtensionProperties(m_instanceInterface, m_physicalDevice, DE_NULL)), m_usedApiVersion))
        , m_deviceFeatures                                      (m_instanceInterface, m_usedApiVersion, m_physicalDevice, m_instanceExtensions, m_deviceExtensions)
        , m_universalQueueFamilyIndex           (findQueueFamilyIndexWithCaps(m_instanceInterface, m_physicalDevice, VK_QUEUE_GRAPHICS_BIT|VK_QUEUE_COMPUTE_BIT))
+#ifndef CTS_USES_VULKANSC
        , m_sparseQueueFamilyIndex                      (m_deviceFeatures.getCoreFeatures2().features.sparseBinding ? findQueueFamilyIndexWithCaps(m_instanceInterface, m_physicalDevice, VK_QUEUE_SPARSE_BINDING_BIT) : 0)
+#else
+       , m_sparseQueueFamilyIndex                      (0)
+#endif // CTS_USES_VULKANSC
        , m_deviceProperties                            (m_instanceInterface, m_usedApiVersion, m_physicalDevice, m_instanceExtensions, m_deviceExtensions)
        , m_device                                                      (createDefaultDevice(vkPlatform, *m_instance, m_instanceInterface, m_physicalDevice, m_usedApiVersion, m_universalQueueFamilyIndex, m_sparseQueueFamilyIndex, m_deviceFeatures.getCoreFeatures2(), m_deviceExtensions, cmdLine, resourceInterface))
 #ifndef CTS_USES_VULKANSC
index 8aeba9d..6b0587f 100644 (file)
@@ -182,6 +182,8 @@ private:
        tcu::TestRunStatus                                                      m_status;
 
 #ifdef CTS_USES_VULKANSC
+       int                                                                                     m_subprocessCount;
+
        std::unique_ptr<vksc_server::ipc::Parent>       m_parentIPC;
        std::vector<DetailedSubprocessTestCount>        m_detailedSubprocessTestCount;
 #endif // CTS_USES_VULKANSC
@@ -233,6 +235,9 @@ TestCaseExecutor::TestCaseExecutor (tcu::TestContext& testCtx)
        , m_resourceInterface   (new vk::ResourceInterfaceStandard(testCtx))
 #endif // CTS_USES_VULKANSC
        , m_instance                    (DE_NULL)
+#if defined CTS_USES_VULKANSC
+       , m_subprocessCount             (0)
+#endif // CTS_USES_VULKANSC
 {
 #ifdef CTS_USES_VULKANSC
        std::vector<int> caseFraction = testCtx.getCommandLine().getCaseFraction();
@@ -473,7 +478,7 @@ void TestCaseExecutor::deinit (tcu::TestCase* testCase)
        if (!m_context->getTestContext().getCommandLine().isSubProcess())
        {
                int currentSubprocessCount = getCurrentSubprocessCount(m_context->getResourceInterface()->getCasePath(), m_context->getTestContext().getCommandLine().getSubprocessTestCount());
-               if (m_testsForSubprocess.size() >= std::size_t(currentSubprocessCount) )
+               if (m_testsForSubprocess.size() >= std::size_t(currentSubprocessCount) || (m_subprocessCount && currentSubprocessCount != m_subprocessCount))
                {
                        runTestsInSubprocess(m_context->getTestContext());
 
@@ -489,6 +494,7 @@ void TestCaseExecutor::deinit (tcu::TestCase* testCase)
                        suppressStandardOutput();
                        m_context->getTestContext().getLog().supressLogging(true);
                }
+               m_subprocessCount = currentSubprocessCount;
        }
 #endif // CTS_USES_VULKANSC
 }
index f60724f..ca08c5f 100644 (file)
@@ -4652,9 +4652,7 @@ dEQP-VKSC.api.buffer_view.access.dedicated_alloc.buffer_view_memory_test_partial
 dEQP-VKSC.api.command_buffers.pool_create_null_params
 dEQP-VKSC.api.command_buffers.pool_create_transient_bit
 dEQP-VKSC.api.command_buffers.pool_create_reset_bit
-dEQP-VKSC.api.command_buffers.pool_reset_release_res
 dEQP-VKSC.api.command_buffers.pool_reset_no_flags_res
-dEQP-VKSC.api.command_buffers.pool_reset_reuse
 dEQP-VKSC.api.command_buffers.allocate_single_primary
 dEQP-VKSC.api.command_buffers.allocate_many_primary
 dEQP-VKSC.api.command_buffers.allocate_single_secondary
index 837923a..392cde3 100644 (file)
@@ -150348,8 +150348,6 @@ dEQP-VKSC.pipeline.framebuffer_attachment.resolve_input_same_attachment
 dEQP-VKSC.pipeline.shader_stencil_export.s8_uint.op_replace
 dEQP-VKSC.pipeline.shader_stencil_export.d24_unorm_s8_uint.op_replace
 dEQP-VKSC.pipeline.shader_stencil_export.d32_sfloat_s8_uint.op_replace
-dEQP-VKSC.pipeline.derivative.compute.derivative_by_handle
-dEQP-VKSC.pipeline.derivative.compute.derivative_by_index
 dEQP-VKSC.pipeline.depth_range_unrestricted.clear_value.d32_sfloat_compare_op_less_or_equal_clear_value_2_wc_1_viewport_min_0_max_1
 dEQP-VKSC.pipeline.depth_range_unrestricted.clear_value.d32_sfloat_compare_op_less_or_equal_clear_value_-3_wc_1_viewport_min_0_max_1
 dEQP-VKSC.pipeline.depth_range_unrestricted.clear_value.d32_sfloat_compare_op_less_or_equal_clear_value_6_wc_1_viewport_min_0_max_1
index ce0eaa8..3a65529 100644 (file)
@@ -65,7 +65,7 @@ extern "C" {
 #define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
 
 // Version of this file
-#define VK_HEADER_VERSION 7
+#define VK_HEADER_VERSION 8
 
 // Vulkan SC variant number
 #define VKSC_API_VARIANT 1
@@ -147,6 +147,7 @@ typedef enum VkResult {
     VK_ERROR_INVALID_EXTERNAL_HANDLE = -1000072003,
     VK_ERROR_FRAGMENTATION = -1000161000,
     VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS = -1000257000,
+    VK_ERROR_VALIDATION_FAILED = -1000011001,
     VK_ERROR_INVALID_PIPELINE_CACHE_DATA = -1000298000,
     VK_ERROR_NO_PIPELINE_MATCH = -1000298001,
     VK_ERROR_SURFACE_LOST_KHR = -1000000000,
@@ -167,7 +168,6 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_SUBMIT_INFO = 4,
     VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO = 5,
     VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 6,
-    VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 7,
     VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 8,
     VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 9,
     VK_STRUCTURE_TYPE_EVENT_CREATE_INFO = 10,
@@ -176,7 +176,6 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 13,
     VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 14,
     VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 15,
-    VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 16,
     VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 17,
     VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 18,
     VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 19,
@@ -469,6 +468,7 @@ typedef enum VkStructureType {
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT = 1000377000,
     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT = 1000381000,
     VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT = 1000381001,
+    VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT = 1000435000,
     VK_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF
 } VkStructureType;
 
@@ -512,7 +512,6 @@ typedef enum VkObjectType {
     VK_OBJECT_TYPE_QUERY_POOL = 12,
     VK_OBJECT_TYPE_BUFFER_VIEW = 13,
     VK_OBJECT_TYPE_IMAGE_VIEW = 14,
-    VK_OBJECT_TYPE_SHADER_MODULE = 15,
     VK_OBJECT_TYPE_PIPELINE_CACHE = 16,
     VK_OBJECT_TYPE_PIPELINE_LAYOUT = 17,
     VK_OBJECT_TYPE_RENDER_PASS = 18,
@@ -1284,7 +1283,6 @@ typedef enum VkQueueFlagBits {
     VK_QUEUE_GRAPHICS_BIT = 0x00000001,
     VK_QUEUE_COMPUTE_BIT = 0x00000002,
     VK_QUEUE_TRANSFER_BIT = 0x00000004,
-    VK_QUEUE_SPARSE_BINDING_BIT = 0x00000008,
     VK_QUEUE_PROTECTED_BIT = 0x00000010,
     VK_QUEUE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkQueueFlagBits;
@@ -1412,7 +1410,6 @@ typedef VkFlags VkColorComponentFlags;
 typedef enum VkPipelineCreateFlagBits {
     VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT = 0x00000001,
     VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT = 0x00000002,
-    VK_PIPELINE_CREATE_DERIVATIVE_BIT = 0x00000004,
     VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT = 0x00000008,
     VK_PIPELINE_CREATE_DISPATCH_BASE_BIT = 0x00000010,
     VK_PIPELINE_CREATE_DISPATCH_BASE = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
@@ -1517,7 +1514,6 @@ typedef enum VkCommandPoolCreateFlagBits {
 typedef VkFlags VkCommandPoolCreateFlags;
 
 typedef enum VkCommandPoolResetFlagBits {
-    VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT = 0x00000001,
     VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
 } VkCommandPoolResetFlagBits;
 typedef VkFlags VkCommandPoolResetFlags;
@@ -4198,6 +4194,7 @@ typedef enum VkDriverId {
     VK_DRIVER_ID_MESA_TURNIP = 18,
     VK_DRIVER_ID_MESA_V3DV = 19,
     VK_DRIVER_ID_MESA_PANVK = 20,
+    VK_DRIVER_ID_SAMSUNG_PROPRIETARY = 21,
     VK_DRIVER_ID_MAX_ENUM = 0x7FFFFFFF
 } VkDriverId;
 
@@ -6237,12 +6234,12 @@ typedef struct VkCheckpointData2NV {
 } VkCheckpointData2NV;
 
 typedef void (VKAPI_PTR *PFN_vkCmdSetEvent2KHR)(VkCommandBuffer                   commandBuffer, VkEvent                                             event, const VkDependencyInfoKHR*                          pDependencyInfo);
-typedef void (VKAPI_PTR *PFN_vkCmdResetEvent2KHR)(VkCommandBuffer                   commandBuffer, VkEvent                                             event, VkPipelineStageFlags2KHR                            stageMask);
+typedef void (VKAPI_PTR *PFN_vkCmdResetEvent2KHR)(VkCommandBuffer                   commandBuffer, VkEvent                                             event, VkPipelineStageFlags2KHR            stageMask);
 typedef void (VKAPI_PTR *PFN_vkCmdWaitEvents2KHR)(VkCommandBuffer                   commandBuffer, uint32_t                                            eventCount, const VkEvent*                     pEvents, const VkDependencyInfoKHR*         pDependencyInfos);
 typedef void (VKAPI_PTR *PFN_vkCmdPipelineBarrier2KHR)(VkCommandBuffer                   commandBuffer, const VkDependencyInfoKHR*                                pDependencyInfo);
-typedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp2KHR)(VkCommandBuffer                   commandBuffer, VkPipelineStageFlags2KHR                            stage, VkQueryPool                                         queryPool, uint32_t                                            query);
+typedef void (VKAPI_PTR *PFN_vkCmdWriteTimestamp2KHR)(VkCommandBuffer                   commandBuffer, VkPipelineStageFlags2KHR            stage, VkQueryPool                                         queryPool, uint32_t                                            query);
 typedef VkResult (VKAPI_PTR *PFN_vkQueueSubmit2KHR)(VkQueue                           queue, uint32_t                            submitCount, const VkSubmitInfo2KHR*           pSubmits, VkFence           fence);
-typedef void (VKAPI_PTR *PFN_vkCmdWriteBufferMarker2AMD)(VkCommandBuffer                   commandBuffer, VkPipelineStageFlags2KHR                            stage, VkBuffer                                            dstBuffer, VkDeviceSize                                        dstOffset, uint32_t                                            marker);
+typedef void (VKAPI_PTR *PFN_vkCmdWriteBufferMarker2AMD)(VkCommandBuffer                   commandBuffer, VkPipelineStageFlags2KHR            stage, VkBuffer                                            dstBuffer, VkDeviceSize                                        dstOffset, uint32_t                                            marker);
 typedef void (VKAPI_PTR *PFN_vkGetQueueCheckpointData2NV)(VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointData2NV* pCheckpointData);
 
 #ifndef VK_NO_PROTOTYPES
@@ -7757,6 +7754,20 @@ VKAPI_ATTR void                                    VKAPI_CALL vkCmdSetColorWrite
     const VkBool32*                             pColorWriteEnables);
 #endif
 
+
+#define VK_EXT_application_parameters 1
+#define VK_EXT_APPLICATION_PARAMETERS_SPEC_VERSION 1
+#define VK_EXT_APPLICATION_PARAMETERS_EXTENSION_NAME "VK_EXT_application_parameters"
+typedef struct VkApplicationParametersEXT {
+    VkStructureType    sType;
+    const void*        pNext;
+    uint32_t           vendorID;
+    uint32_t           deviceID;
+    uint32_t           key;
+    uint64_t           value;
+} VkApplicationParametersEXT;
+
+
 #ifdef __cplusplus
 }
 #endif
index 2c65b7d..1ff0378 100644 (file)
        #pragma clang diagnostic ignored "-Wpointer-bool-conversion"
 #endif
 
-#include "vulkan_json_data.hpp"
 #include "vulkan_json_parser.hpp"
+#include "vulkan_json_data.hpp"
+
+#include "tlsWrapper.hpp"
+
+TLS_INSTANCE();
+namespace vk_json_parser {
+GlobalMem<deUint32, deUint8> &
+TLSGetGlobalMem() {
+       return TLSWrapper<GlobalMem<deUint32, deUint8>>::instance.attach();
+}
+}
+namespace vk_json {
+std::stringstream &
+TLSGetStrStream() {
+       return TLSWrapper<std::stringstream>::instance.attach();
+}
+}
 
 #ifdef __GNUC__
        #pragma GCC diagnostic pop