diff options
author | Ulrich Drepper <drepper@gmail.com> | 2012-01-08 21:19:43 -0500 |
---|---|---|
committer | Ulrich Drepper <drepper@gmail.com> | 2012-01-08 21:19:43 -0500 |
commit | ec09c1c410d40386ec3e5d2d82fc5c378b4b2681 (patch) | |
tree | 2189714f7efcfc502ddef885c7c1d541eae6684c /iconv | |
parent | aebae0537dcb408100b88c6b7647a7e858c43237 (diff) | |
download | glibc-ec09c1c410d40386ec3e5d2d82fc5c378b4b2681.tar.gz |
Optimize xmalloc, xcalloc, xrealloc, and xstrdup
Add alloc_size attribute and apply consistently the malloc attribute
to xmalloc, xcalloc, xrealloc, and xstrdup.
Diffstat (limited to 'iconv')
-rw-r--r-- | iconv/iconv_charmap.c | 8 | ||||
-rw-r--r-- | iconv/iconvconfig.c | 9 | ||||
-rw-r--r-- | iconv/strtab.c | 5 |
3 files changed, 14 insertions, 8 deletions
diff --git a/iconv/iconv_charmap.c b/iconv/iconv_charmap.c index d128111912..09bfa92df2 100644 --- a/iconv/iconv_charmap.c +++ b/iconv/iconv_charmap.c @@ -1,5 +1,5 @@ /* Convert using charmaps and possibly iconv(). - Copyright (C) 2001, 2005, 2006, 2008 Free Software Foundation, Inc. + Copyright (C) 2001, 2005, 2006, 2008, 2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 2001. @@ -33,8 +33,10 @@ /* Prototypes for a few program-wide used functions. */ -extern void *xmalloc (size_t __n); -extern void *xcalloc (size_t __n, size_t __s); +extern void *xmalloc (size_t n) + __attribute_malloc__ __attribute_alloc_size (1); +extern void *xcalloc (size_t n, size_t s) + __attribute_malloc__ __attribute_alloc_size (1, 2); struct convtable diff --git a/iconv/iconvconfig.c b/iconv/iconvconfig.c index afcea94983..9738ed890d 100644 --- a/iconv/iconvconfig.c +++ b/iconv/iconvconfig.c @@ -248,9 +248,12 @@ static struct static const char gconv_module_ext[] = MODULE_EXT; -extern void *xmalloc (size_t n) __attribute_malloc__; -extern void *xcalloc (size_t n, size_t m) __attribute_malloc__; -extern void *xrealloc (void *p, size_t n); +extern void *xmalloc (size_t n) + __attribute_malloc__ __attribute_alloc_size (1); +extern void *xcalloc (size_t n, size_t s) + __attribute_malloc__ __attribute_alloc_size (1, 2); +extern void *xrealloc (void *o, size_t n) + __attribute_malloc__ __attribute_alloc_size (2); /* C string table handling. */ diff --git a/iconv/strtab.c b/iconv/strtab.c index 4a8f29a675..37b9077276 100644 --- a/iconv/strtab.c +++ b/iconv/strtab.c @@ -1,5 +1,5 @@ /* C string table handling. - Copyright (C) 2000, 2001, 2005 Free Software Foundation, Inc. + Copyright (C) 2000, 2001, 2005, 2012 Free Software Foundation, Inc. Written by Ulrich Drepper <drepper@redhat.com>, 2000. This program is free software; you can redistribute it and/or modify @@ -66,7 +66,8 @@ struct Strtab static size_t ps; -extern void *xmalloc (size_t n) __attribute_malloc__; +extern void *xmalloc (size_t n) + __attribute_malloc__ __attribute_alloc_size (1); /* Prototypes for our functions that are used from iconvconfig.c. If you change these, change also iconvconfig.c. */ |