Make OPENSSL_die as noreturn

Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/526)
This commit is contained in:
hesiod 2016-05-18 13:34:27 -04:00 committed by Rich Salz
parent a37458c1bf
commit 872759053b
2 changed files with 9 additions and 1 deletions

View File

@ -310,10 +310,10 @@ int CRYPTO_mem_leaks(BIO *bio);
# endif
/* die if we have to */
ossl_noreturn void OPENSSL_die(const char *assertion, const char *file, int line);
# if OPENSSL_API_COMPAT < 0x10100000L
# define OpenSSLDie(f,l,a) OPENSSL_die((a),(f),(l))
# endif
void OPENSSL_die(const char *assertion, const char *file, int line);
# define OPENSSL_assert(e) \
(void)((e) ? 0 : (OPENSSL_die("assertion failed: " #e, OPENSSL_FILE, OPENSSL_LINE), 1))

View File

@ -293,6 +293,14 @@ typedef unsigned __int64 uint64_t;
# define ossl_inline inline
# endif
# if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7)
# define ossl_noreturn __attribute__((noreturn))
# elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
# define ossl_noreturn _Noreturn
# else
# define ossl_noreturn
# endif
#ifdef __cplusplus
}
#endif