diff --git a/src/Device/Surface.hpp b/src/Device/Surface.hpp
index 19d0dd1..49f2e4e 100644
--- a/src/Device/Surface.hpp
+++ b/src/Device/Surface.hpp
@@ -18,7 +18,7 @@
 #include "Color.hpp"
 #include "Device/Config.hpp"
 #include "System/Resource.hpp"
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
 
 namespace sw
 {
diff --git a/src/Vulkan/VkGetProcAddress.h b/src/Vulkan/VkGetProcAddress.h
index 2d5ba5f..e322892 100644
--- a/src/Vulkan/VkGetProcAddress.h
+++ b/src/Vulkan/VkGetProcAddress.h
@@ -15,7 +15,7 @@
 #ifndef VK_UTILS_HPP_
 #define VK_UTILS_HPP_
 
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
 
 namespace vk
 {
diff --git a/src/Vulkan/VkMemory.h b/src/Vulkan/VkMemory.h
index 29309b7..7fc3837 100644
--- a/src/Vulkan/VkMemory.h
+++ b/src/Vulkan/VkMemory.h
@@ -15,7 +15,7 @@
 #ifndef VK_MEMORY_HPP_
 #define VK_MEMORY_HPP_
 
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
 
 namespace vk
 {
diff --git a/src/Vulkan/VkObject.hpp b/src/Vulkan/VkObject.hpp
index 5a9a414..757d556 100644
--- a/src/Vulkan/VkObject.hpp
+++ b/src/Vulkan/VkObject.hpp
@@ -18,7 +18,8 @@
 #include "VkConfig.h"
 #include "VkDebug.hpp"
 #include "VkMemory.h"
-#include <vulkan/vulkan.h>
+
+#include <vulkan/vulkan_core.h>
 #include <vulkan/vk_icd.h>
 
 namespace vk
diff --git a/src/Vulkan/VkPromotedExtensions.cpp b/src/Vulkan/VkPromotedExtensions.cpp
index 8bfe9c4..b244216 100644
--- a/src/Vulkan/VkPromotedExtensions.cpp
+++ b/src/Vulkan/VkPromotedExtensions.cpp
@@ -40,7 +40,7 @@
 // VK_KHR_storage_buffer_storage_class (no functions in this extension)
 // VK_KHR_variable_pointers (no functions in this extension)
 
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
 
 extern "C"
 {
diff --git a/src/Vulkan/libVulkan.cpp b/src/Vulkan/libVulkan.cpp
index 66c6a3e..9360e51 100644
--- a/src/Vulkan/libVulkan.cpp
+++ b/src/Vulkan/libVulkan.cpp
@@ -467,22 +467,22 @@
 	return VK_SUCCESS;
 }
 
-VKAPI_ATTR VkResult VKAPI_CALL vkQueueWaitIdle(VkQueue queue)
-{
-	TRACE("(VkQueue queue = 0x%X)", queue);
-
-	vk::Cast(queue)->waitIdle();
-
-	return VK_SUCCESS;
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL vkDeviceWaitIdle(VkDevice device)
-{
-	TRACE("(VkDevice device = 0x%X)", device);
-
-	vk::Cast(device)->waitIdle();
-
-	return VK_SUCCESS;
+VKAPI_ATTR VkResult VKAPI_CALL vkQueueWaitIdle(VkQueue queue)
+{
+	TRACE("(VkQueue queue = 0x%X)", queue);
+
+	vk::Cast(queue)->waitIdle();
+
+	return VK_SUCCESS;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL vkDeviceWaitIdle(VkDevice device)
+{
+	TRACE("(VkDevice device = 0x%X)", device);
+
+	vk::Cast(device)->waitIdle();
+
+	return VK_SUCCESS;
 }
 
 VKAPI_ATTR VkResult VKAPI_CALL vkAllocateMemory(VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMemory)
@@ -1209,8 +1209,8 @@
 
 VKAPI_ATTR VkResult VKAPI_CALL vkResetCommandPool(VkDevice device, VkCommandPool commandPool, VkCommandPoolResetFlags flags)
 {
-	TRACE("(VkDevice device = 0x%X, VkCommandPool commandPool = 0x%X, VkCommandPoolResetFlags flags = %d )",
-		device, commandPool, flags);
+	TRACE("(VkDevice device = 0x%X, VkCommandPool commandPool = 0x%X, VkCommandPoolResetFlags flags = %d )",
+		device, commandPool, flags);
 
 	return vk::Cast(commandPool)->reset(flags);
 }
@@ -1923,9 +1923,9 @@
 
 VKAPI_ATTR void VKAPI_CALL vkTrimCommandPool(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags)
 {
-	TRACE("(VkDevice device = 0x%X, VkCommandPool commandPool = 0x%X, VkCommandPoolTrimFlags flags = %d)",
-	      device, commandPool, flags);
-
+	TRACE("(VkDevice device = 0x%X, VkCommandPool commandPool = 0x%X, VkCommandPoolTrimFlags flags = %d)",
+	      device, commandPool, flags);
+
 	vk::Cast(commandPool)->trim(flags);
 }
 
diff --git a/tests/VulkanUnitTests/unittests.cpp b/tests/VulkanUnitTests/unittests.cpp
index dfde2f8..eb3c8bd 100644
--- a/tests/VulkanUnitTests/unittests.cpp
+++ b/tests/VulkanUnitTests/unittests.cpp
@@ -18,7 +18,7 @@
 #include "gtest/gtest.h"
 #include "gmock/gmock.h"
 
-#include <vulkan/vulkan.h>
+#include <vulkan/vulkan_core.h>
 #include <vulkan/vk_icd.h>
 
 #include <cstring>
