From 195479de01b1cac17bd13a6f06876d46914869e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20S=C3=BC=C3=9Fenbach?= Date: Mon, 26 Jun 2017 15:25:53 +0200 Subject: [PATCH] bracket the exception definitions by "#ifndef VULKAN_HPP_NO_EXCEPTIONS" (#114) --- VulkanHppGenerator.cpp | 3 ++- vulkan/vulkan.hpp | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/VulkanHppGenerator.cpp b/VulkanHppGenerator.cpp index 1ec38d4..3eafc6c 100644 --- a/VulkanHppGenerator.cpp +++ b/VulkanHppGenerator.cpp @@ -3392,7 +3392,6 @@ R"( default: throw SystemError( make_error_code( result ) ); } )"; leaveProtect(os, enumData.protect); - os << std::endl; } void writeDeleterClasses(std::ostream & os, std::pair> const& deleterTypes, std::map const& deleterData) @@ -4166,10 +4165,12 @@ int main( int argc, char **argv ) assert(it != vkData.dependencies.end()); writeTypeEnum(ofs, vkData.enums.find(it->name)->second); writeEnumsToString(ofs, vkData.enums.find(it->name)->second); + ofs << "#ifndef VULKAN_HPP_NO_EXCEPTIONS"; ofs << exceptionHeader; ofs << exceptionClassesHeader; writeExceptionsForEnum(ofs, vkData.enums.find(it->name)->second); writeThrowExceptions(ofs, vkData.enums.find(it->name)->second); + ofs << "#endif" << std::endl; vkData.dependencies.erase(it); ofs << "} // namespace vk" << std::endl diff --git a/vulkan/vulkan.hpp b/vulkan/vulkan.hpp index 8305b4b..33f8e34 100644 --- a/vulkan/vulkan.hpp +++ b/vulkan/vulkan.hpp @@ -498,7 +498,7 @@ namespace vk } } - +#ifndef VULKAN_HPP_NO_EXCEPTIONS #if defined(_MSC_VER) && (_MSC_VER == 1800) # define noexcept _NOEXCEPT #endif @@ -767,7 +767,7 @@ namespace vk default: throw SystemError( make_error_code( result ) ); } } - +#endif } // namespace vk namespace std