diff options
author | Kai Köhne <kai.koehne@qt.io> | 2022-06-21 16:20:08 +0200 |
---|---|---|
committer | Kai Köhne <kai.koehne@qt.io> | 2022-06-23 01:30:23 +0200 |
commit | bc06e345fe6e284e4dc72f3e02662641dcb9ed71 (patch) | |
tree | 1179ebb82cde5ef22942b3043d7b49152ae628a3 /src/corelib/global | |
parent | f921b42f34f254ca7066691f3cf4a1c7270f0161 (diff) |
Use [[noreturn]] attribute
Use __has_cpp_attribute mechanism to check availability of
[[noreturn]]. For MSVC 2019 and 2022, this is always
the case, so we can also remove the (now dead)
__declpsec(noreturn) definition.
Pick-to: 6.4
Change-Id: Ie7b39bd93bc5e1a173e245a3a5d5ff7e9067a59f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib/global')
-rw-r--r-- | src/corelib/global/qcompilerdetection.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/corelib/global/qcompilerdetection.h b/src/corelib/global/qcompilerdetection.h index dc366421a3..c3b0611018 100644 --- a/src/corelib/global/qcompilerdetection.h +++ b/src/corelib/global/qcompilerdetection.h @@ -60,7 +60,6 @@ # define Q_FUNC_INFO __FUNCSIG__ # define Q_ASSUME_IMPL(expr) __assume(expr) # define Q_UNREACHABLE_IMPL() __assume(0) -# define Q_NORETURN __declspec(noreturn) # define Q_DECL_EXPORT __declspec(dllexport) # define Q_DECL_IMPORT __declspec(dllimport) # define QT_MAKE_UNCHECKED_ARRAY_ITERATOR(x) stdext::make_unchecked_array_iterator(x) // Since _MSC_VER >= 1800 @@ -928,6 +927,11 @@ # define Q_DECL_UNUSED [[maybe_unused]] #endif +#if __has_cpp_attribute(noreturn) +# undef Q_NORETURN +# define Q_NORETURN [[noreturn]] +#endif + #if __has_cpp_attribute(deprecated) # ifdef Q_DECL_DEPRECATED # undef Q_DECL_DEPRECATED |