X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Feealloc.h;h=17d4af30533eebb23d623c6b5baeff8d8523161f;hb=cbf7a84bcf8194d6687244fb0e0701539aeeee21;hp=02cd7925e1817b87a677c17d25a85a3b1550f821;hpb=b2e2010c7c902235b5efb5bd3c6529f61b093aa4;p=gnulib.git diff --git a/lib/eealloc.h b/lib/eealloc.h index 02cd7925e..17d4af305 100644 --- a/lib/eealloc.h +++ b/lib/eealloc.h @@ -1,5 +1,5 @@ /* Memory allocation with expensive empty allocations. - Copyright (C) 2003, 2008, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2003, 2008, 2010-2012 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) {