mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-03 19:16:46 +00:00
Add conditional support for noreturn functions.
This adds support for tagging functions with the noreturn attribute. If DO_CRASH is enabled then ast_do_crash never returns. If AST_DEVMODE and DO_CRASH are enabled then failed assertions never return. This can resolve a large number of false positives with static analyzers. ASTERISK-26220 #close Change-Id: Icfb61e5fe54574eced4c3e88b317244f467ec753
This commit is contained in:
@@ -77,6 +77,12 @@
|
||||
#define attribute_may_alias
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_ATTRIBUTE_noreturn
|
||||
#define attribute_noreturn __attribute__((noreturn))
|
||||
#else
|
||||
#define attribute_noreturn
|
||||
#endif
|
||||
|
||||
/* Some older version of GNU gcc (3.3.5 on OpenBSD 4.3 for example) dont like 'NULL' as sentinel */
|
||||
#define SENTINEL ((char *)NULL)
|
||||
|
||||
|
Reference in New Issue
Block a user