about summary refs log tree commit diff
path: root/misc
diff options
context:
space:
mode:
Diffstat (limited to 'misc')
-rw-r--r--misc/sys/cdefs.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/misc/sys/cdefs.h b/misc/sys/cdefs.h
index 72073e8557..16cf557b39 100644
--- a/misc/sys/cdefs.h
+++ b/misc/sys/cdefs.h
@@ -38,7 +38,8 @@
 
 #ifdef __GNUC__
 
-/* All functions, except those with callbacks, are leaf functions.  */
+/* All functions, except those with callbacks or those that
+   synchronize memory, are leaf functions.  */
 # if __GNUC_PREREQ (4, 6) && !defined _LIBC
 #  define __LEAF , __leaf__
 #  define __LEAF_ATTR __attribute__ ((__leaf__))
@@ -54,13 +55,16 @@
    the -fexceptions options for C code as well.  */
 # if !defined __cplusplus && __GNUC_PREREQ (3, 3)
 #  define __THROW	__attribute__ ((__nothrow__ __LEAF))
+#  define __THROWNL	__attribute__ ((__nothrow__))
 #  define __NTH(fct)	__attribute__ ((__nothrow__ __LEAF)) fct
 # else
 #  if defined __cplusplus && __GNUC_PREREQ (2,8)
 #   define __THROW	throw ()
+#   define __THROWNL	throw ()
 #   define __NTH(fct)	__LEAF_ATTR fct throw ()
 #  else
 #   define __THROW
+#   define __THROWNL
 #   define __NTH(fct)	fct
 #  endif
 # endif
@@ -70,6 +74,7 @@
 # define __inline		/* No inline functions.  */
 
 # define __THROW
+# define __THROWNL
 # define __NTH(fct)	fct
 
 # define __const	const