From 217d1dae0093ccaaac59a4fa42000e732492cb66 Mon Sep 17 00:00:00 2001 From: Jeremy Huddleston Date: Wed, 27 Apr 2011 17:25:53 -0700 Subject: [PATCH] Add _X_NONNULL macro to annotate when a function expects arguments to be non-null This will allow with compiler optimization and better static analysis. Signed-off-by: Jeremy Huddleston Reviewed-by: Daniel Stone --- Xfuncproto.h.in | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Xfuncproto.h.in b/Xfuncproto.h.in index 88d91c0..39ca3b2 100644 --- a/Xfuncproto.h.in +++ b/Xfuncproto.h.in @@ -122,6 +122,12 @@ in this Software without prior written authorization from The Open Group. # define _X_ATTRIBUTE_PRINTF(x,y) #endif +#if defined(__GNUC__) && ((__GNUC__ * 100 + __GNUC_MINOR__) >= 303) +#define _X_NONNULL(args...) __attribute__((nonnull(args))) +#else +#define _X_NONNULL(...) /* */ +#endif + #if defined(__GNUC__) && ((__GNUC__ * 100 + __GNUC_MINOR__) >= 205) #define _X_UNUSED __attribute__((__unused__)) #else