X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Feealloc.h;h=7249ac797fc3a6c7d76d26b1a4439f65ac21239f;hb=07809063056aef043ba738ab8229042f1ffc9659;hp=3dd7009940cb4a8b2a6e3b1d0706b47f9a11c24d;hpb=f64a5d6252a22e5ec3c050f9f49b4d591ec82e78;p=gnulib.git diff --git a/lib/eealloc.h b/lib/eealloc.h index 3dd700994..7249ac797 100644 --- a/lib/eealloc.h +++ b/lib/eealloc.h @@ -1,5 +1,5 @@ /* Memory allocation with expensive empty allocations. - Copyright (C) 2003, 2008 Free Software Foundation, Inc. + Copyright (C) 2003, 2008, 2010-2011 Free Software Foundation, Inc. Written by Bruno Haible , 2003, based on prior work by Jim Meyering. @@ -35,7 +35,12 @@ # define eemalloc malloc #else # if __GNUC__ >= 3 -static inline void *eemalloc (size_t n) __attribute__ ((__malloc__)); +static inline void *eemalloc (size_t n) + __attribute__ ((__malloc__)) +# if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3) + __attribute__ ((__alloc_size__ (1))) +# endif + ; # endif static inline void * eemalloc (size_t n) @@ -50,6 +55,10 @@ eemalloc (size_t n) #if REALLOC_0_IS_NONNULL # define eerealloc realloc #else +# if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3) +static inline void *eerealloc (void *p, size_t n) + __attribute__ ((__alloc_size__ (2))); +# endif static inline void * eerealloc (void *p, size_t n) {