v154: Bug 14417 - Added VkShaderStage to VkShaderCreateInfo
diff --git a/include/vulkan.h b/include/vulkan.h
index f8a7e86..010123d 100644
--- a/include/vulkan.h
+++ b/include/vulkan.h
@@ -41,7 +41,7 @@
     ((major << 22) | (minor << 12) | patch)
 
 // Vulkan API version supported by this file
-#define VK_API_VERSION VK_MAKE_VERSION(0, 153, 0)
+#define VK_API_VERSION VK_MAKE_VERSION(0, 154, 0)
 
 
 #if defined(__cplusplus) && (_MSC_VER >= 1800 || __cplusplus >= 201103L)
@@ -1566,6 +1566,7 @@
     VkShaderModule                              module;
     const char*                                 pName;
     VkShaderCreateFlags                         flags;
+    VkShaderStage                               stage;
 } VkShaderCreateInfo;
 
 typedef struct {
diff --git a/tests/init.cpp b/tests/init.cpp
index 21c50d9..b6f9294 100644
--- a/tests/init.cpp
+++ b/tests/init.cpp
@@ -73,7 +73,7 @@
     void CreateCommandBufferTest();
     void CreatePipelineTest();
     void CreateShaderTest();
-    void CreateShader(VkShader *pshader);
+    void CreateShader(VkShader *pshader, VkShaderStage stage);
 
     VkDevice device() {return m_device->handle();}
 
@@ -528,7 +528,7 @@
     CreateCommandBufferTest();
 }
 
-void VkTest::CreateShader(VkShader *pshader)
+void VkTest::CreateShader(VkShader *pshader, VkShaderStage stage)
 {
     void *code;
     uint32_t codeSize;
@@ -564,6 +564,7 @@
     createInfo.module = module;
     createInfo.pName = "main";
     createInfo.flags = 0;
+    createInfo.stage = stage;
     err = vkCreateShader(device(), &createInfo, &shader);
     ASSERT_VK_SUCCESS(err);
 
diff --git a/tests/vkrenderframework.cpp b/tests/vkrenderframework.cpp
index 5539541..6962fa0 100644
--- a/tests/vkrenderframework.cpp
+++ b/tests/vkrenderframework.cpp
@@ -1149,6 +1149,7 @@
     createInfo.module = module->handle();
     createInfo.pName = "main";
     createInfo.flags = 0;
+    createInfo.stage = stage;
 
     err = init_try(*m_device, createInfo);
     assert(VK_SUCCESS == err);
diff --git a/tests/vktestbinding.h b/tests/vktestbinding.h
index ea0bb06..d1bf56e 100644
--- a/tests/vktestbinding.h
+++ b/tests/vktestbinding.h
@@ -476,7 +476,7 @@
     void init(const Device &dev, const VkShaderCreateInfo &info);
     VkResult init_try(const Device &dev, const VkShaderCreateInfo &info);
 
-    static VkShaderCreateInfo create_info(VkShaderModule module, const char *pName, VkFlags flags);
+    static VkShaderCreateInfo create_info(VkShaderModule module, const char *pName, VkFlags flags, VkShaderStage stage);
 };
 
 class Pipeline : public internal::NonDispHandle<VkPipeline> {
@@ -801,13 +801,14 @@
     return info;
 }
 
-inline VkShaderCreateInfo Shader::create_info(VkShaderModule module, const char *pName, VkFlags flags)
+inline VkShaderCreateInfo Shader::create_info(VkShaderModule module, const char *pName, VkFlags flags, VkShaderStage stage)
 {
     VkShaderCreateInfo info = {};
     info.sType = VK_STRUCTURE_TYPE_SHADER_CREATE_INFO;
     info.module = module;
     info.pName = pName;
     info.flags = flags;
+    info.stage = stage;
     return info;
 }