Define wxNOEXCEPT similarly to the existing wxOVERRIDE

Also define wxHAS_NOEXCEPT allowing to check if noexcept is supported.

This is not used in the library yet, but probably should be.
This commit is contained in:
Vadim Zeitlin
2020-04-09 19:48:26 +02:00
parent 80d5c95f93
commit f4f70102ea
2 changed files with 9 additions and 0 deletions

View File

@@ -188,6 +188,7 @@ Currently the following symbols exist:
@itemdef{wxHAS_NATIVE_ANIMATIONCTRL, Defined if native wxAnimationCtrl class is being used (this symbol only exists in wxWidgets 3.1.4 and later).} @itemdef{wxHAS_NATIVE_ANIMATIONCTRL, Defined if native wxAnimationCtrl class is being used (this symbol only exists in wxWidgets 3.1.4 and later).}
@itemdef{wxHAS_NATIVE_DATAVIEWCTRL, Defined if native wxDataViewCtrl class is being used (this symbol only exists in wxWidgets 3.1.4 and later).} @itemdef{wxHAS_NATIVE_DATAVIEWCTRL, Defined if native wxDataViewCtrl class is being used (this symbol only exists in wxWidgets 3.1.4 and later).}
@itemdef{wxHAS_NATIVE_WINDOW, Defined if wxNativeWindow class is available.} @itemdef{wxHAS_NATIVE_WINDOW, Defined if wxNativeWindow class is available.}
@itemdef{wxHAS_NOEXCEPT, Defined if the currently used compiler supports C++11 @c noexcept. @c wxNOEXCEPT is defined as this keyword in this case, and as nothing otherwise.}
@itemdef{wxHAS_NULLPTR_T, Defined if the currently used compiler supports C++11 @c nullptr.} @itemdef{wxHAS_NULLPTR_T, Defined if the currently used compiler supports C++11 @c nullptr.}
@itemdef{wxHAS_IMAGES_IN_RESOURCES, Defined if <a href="http://en.wikipedia.org/wiki/Resource_(Windows)"> @itemdef{wxHAS_IMAGES_IN_RESOURCES, Defined if <a href="http://en.wikipedia.org/wiki/Resource_(Windows)">
Windows resource files</a> or OS/2 resource files are available on the current platform.} Windows resource files</a> or OS/2 resource files are available on the current platform.}

View File

@@ -285,6 +285,14 @@ typedef short int WXTYPE;
#define wxOVERRIDE #define wxOVERRIDE
#endif /* HAVE_OVERRIDE */ #endif /* HAVE_OVERRIDE */
/* same for noexcept keyword */
#if __cplusplus >= 201703L || wxCHECK_VISUALC_VERSION(14)
#define wxHAS_NOEXCEPT
#define wxNOEXCEPT noexcept
#else
#define wxNOEXCEPT
#endif
/* /*
Support for nullptr is available since MSVS 2010, even though it doesn't Support for nullptr is available since MSVS 2010, even though it doesn't
define __cplusplus as a C++11 compiler. define __cplusplus as a C++11 compiler.