diff --git a/Foundation/include/Poco/Platform.h b/Foundation/include/Poco/Platform.h index 7a4e7e2fb..46fe214d0 100644 --- a/Foundation/include/Poco/Platform.h +++ b/Foundation/include/Poco/Platform.h @@ -247,12 +247,16 @@ #if defined(__clang__) #define POCO_COMPILER_CLANG - #define POCO_HAVE_CXXABI_H + #if __has_include() + #define POCO_HAVE_CXXABI_H + #endif #elif defined(_MSC_VER) #define POCO_COMPILER_MSVC #elif defined (__GNUC__) #define POCO_COMPILER_GCC - #define POCO_HAVE_CXXABI_H + #if __has_include() + #define POCO_HAVE_CXXABI_H + #endif #if defined (__MINGW32__) || defined (__MINGW64__) #define POCO_COMPILER_MINGW #endif diff --git a/Foundation/include/Poco/Types.h b/Foundation/include/Poco/Types.h index 3a7f5495c..0a97cfdde 100644 --- a/Foundation/include/Poco/Types.h +++ b/Foundation/include/Poco/Types.h @@ -21,17 +21,12 @@ #include "Poco/Foundation.h" #include #include -#if defined(__clang__) || (defined (__GNUC__) && (__GNUC__ >= 3)) -# if (__cplusplus >= 201703L) -# if __has_include() -# include -# include -# include -# define POCO_HAVE_CXXABI_H -# endif // __has_include() -# endif // __cplusplus >= 201703L -#endif // defined(__clang__) || (defined (__GNUC__) && (__GNUC__ >= 3)) +#if defined(POCO_HAVE_CXXABI_H) + #include + #include + #include +#endif namespace Poco {