From: Andy Polyakov Date: Thu, 26 May 2016 21:10:56 +0000 (+0200) Subject: include/openssl/e_os2.h: fix 'noreturn' pre-processor logic. X-Git-Tag: OpenSSL_1_1_0-pre6~668 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=90edbfcce3b84287332ac77f19993cbc18effdef;p=oweals%2Fopenssl.git include/openssl/e_os2.h: fix 'noreturn' pre-processor logic. Newer gcc still recognizes e.g. -std=c9x in which case it wouldn't have used 'noreturn' at all with original logic. Reviewed-by: Richard Levitte --- diff --git a/include/openssl/e_os2.h b/include/openssl/e_os2.h index eee632352a..e0a5e46a6b 100644 --- a/include/openssl/e_os2.h +++ b/include/openssl/e_os2.h @@ -293,10 +293,10 @@ typedef unsigned __int64 uint64_t; # define ossl_inline inline # endif -# if defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7)) -# define ossl_noreturn __attribute__((noreturn)) -# elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L +# if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L # define ossl_noreturn _Noreturn +# elif defined(__GNUC__) && __GNUC__ >= 2 +# define ossl_noreturn __attribute__((noreturn)) # else # define ossl_noreturn # endif