mirror of
https://github.com/morgan9e/FreeRDP
synced 2026-04-14 00:14:11 +09:00
[winpr,platform] fix C23 checks
https://en.cppreference.com/w/c/language/attributes.html has a nice overview of attributes and when they were introduced. Adjust macro checks accordingly.
This commit is contained in:
@@ -76,7 +76,7 @@
|
||||
#endif
|
||||
|
||||
#if defined(WINPR_DEFINE_ATTR_NODISCARD)
|
||||
#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201904L)
|
||||
#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 202003L)
|
||||
#define WINPR_ATTR_NODISCARD [[nodiscard]]
|
||||
#elif defined(__clang__)
|
||||
#define WINPR_ATTR_NODISCARD __attribute__((warn_unused_result))
|
||||
@@ -539,7 +539,9 @@ WINPR_PRAGMA_DIAG_POP
|
||||
#define WINPR_DEPRECATED_VAR(text, obj) obj
|
||||
#endif
|
||||
|
||||
#if defined(WIN32) && !defined(__CYGWIN__)
|
||||
#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 202202L)
|
||||
#define WINPR_NORETURN(obj) [[noreturn]] obj
|
||||
#elif defined(WIN32) && !defined(__CYGWIN__)
|
||||
#define WINPR_NORETURN(obj) __declspec(noreturn) obj
|
||||
#elif defined(__GNUC__)
|
||||
#define WINPR_NORETURN(obj) __attribute__((__noreturn__)) obj
|
||||
@@ -641,7 +643,7 @@ WINPR_PRAGMA_DIAG_POP
|
||||
|
||||
#if defined(__cplusplus) && (__cplusplus >= 201703L)
|
||||
#define WINPR_ATTR_UNUSED [[maybe_unused]] /** @since version 3.12.0 */
|
||||
#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 202000L)
|
||||
#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201904L)
|
||||
#define WINPR_ATTR_UNUSED [[maybe_unused]] /** @since version 3.12.0 */
|
||||
#elif defined(__GNUC__) || defined(__clang__)
|
||||
#define WINPR_ATTR_UNUSED __attribute__((unused)) /** @since version 3.12.0 */
|
||||
|
||||
Reference in New Issue
Block a user