1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-28 00:21:52 +03:00
* misc/sys/cdefs.h: Define __attribute_malloc__ according to
	available gcc version.
	* string/string.h: Mark strdup, __strdup, and strndup with
	__attribute_malloc__.
	* stdlib/stdlib.h: Make malloc, calloc, realloc, and valloc with
	__attribute_malloc__.
	* malloc/malloc.h: Make malloc, calloc, realloc, valloc, pvallc,
	__morecore, and __default_morecore with __attribute_malloc__.
	Provide default definition for __attribute_malloc__.
	* libio/stdio.h: Make tempnam with __attribute_malloc__.
This commit is contained in:
Ulrich Drepper
1999-12-19 08:08:59 +00:00
parent 778c59c850
commit e9e9b245b9
7 changed files with 50 additions and 16 deletions

View File

@ -55,6 +55,8 @@
/* Used by GNU libc internals. */
# define __malloc_size_t size_t
# define __malloc_ptrdiff_t ptrdiff_t
#else
# define __attribute_malloc__
#endif
#ifdef __GNUC__
@ -114,14 +116,17 @@ extern void ptmalloc_init __MALLOC_P ((void));
#endif
/* Allocate SIZE bytes of memory. */
extern __malloc_ptr_t malloc __MALLOC_P ((size_t __size));
extern __malloc_ptr_t malloc __MALLOC_P ((size_t __size)) __attribute_malloc__;
/* Allocate NMEMB elements of SIZE bytes each, all initialized to 0. */
extern __malloc_ptr_t calloc __MALLOC_P ((size_t __nmemb, size_t __size));
extern __malloc_ptr_t calloc __MALLOC_P ((size_t __nmemb, size_t __size))
__attribute_malloc__;
/* Re-allocate the previously allocated block in __ptr, making the new
block SIZE bytes long. */
extern __malloc_ptr_t realloc __MALLOC_P ((__malloc_ptr_t __ptr, size_t __size));
extern __malloc_ptr_t realloc __MALLOC_P ((__malloc_ptr_t __ptr,
size_t __size))
__attribute_malloc__;
/* Free a block allocated by `malloc', `realloc' or `calloc'. */
extern void free __MALLOC_P ((__malloc_ptr_t __ptr));
@ -133,18 +138,21 @@ extern void cfree __MALLOC_P ((__malloc_ptr_t __ptr));
extern __malloc_ptr_t memalign __MALLOC_P ((size_t __alignment, size_t __size));
/* Allocate SIZE bytes on a page boundary. */
extern __malloc_ptr_t valloc __MALLOC_P ((size_t __size));
extern __malloc_ptr_t valloc __MALLOC_P ((size_t __size)) __attribute_malloc__;
/* Equivalent to valloc(minimum-page-that-holds(n)), that is, round up
__size to nearest pagesize. */
extern __malloc_ptr_t pvalloc __MALLOC_P ((size_t __size));
extern __malloc_ptr_t pvalloc __MALLOC_P ((size_t __size))
__attribute_malloc__;
/* Underlying allocation function; successive calls should return
contiguous pieces of memory. */
extern __malloc_ptr_t (*__morecore) __MALLOC_PMT ((ptrdiff_t __size));
extern __malloc_ptr_t (*__morecore) __MALLOC_PMT ((ptrdiff_t __size))
__attribute_malloc__;
/* Default value of `__morecore'. */
extern __malloc_ptr_t __default_morecore __MALLOC_P ((ptrdiff_t __size));
extern __malloc_ptr_t __default_morecore __MALLOC_P ((ptrdiff_t __size))
__attribute_malloc__;
/* SVID2/XPG mallinfo structure */
struct mallinfo {