Changeset 609 for branches/GNU/src/binutils/libiberty/xmalloc.c
- Timestamp:
- Aug 16, 2003, 6:59:22 PM (22 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/GNU/src/binutils/libiberty/xmalloc.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 18 18 Boston, MA 02111-1307, USA. */ 19 19 20 /* 21 22 @deftypefn Replacement void* xmalloc (size_t) 23 24 Allocate memory without fail. If @code{malloc} fails, this will print 25 a message to @code{stderr} (using the name set by 26 @code{xmalloc_set_program_name}, 27 if any) and then call @code{xexit}. Note that it is therefore safe for 28 a program to contain @code{#define malloc xmalloc} in its source. 29 30 @end deftypefn 31 32 @deftypefn Replacement void* xrealloc (void *@var{ptr}, size_t @var{size}) 33 Reallocate memory without fail. This routine functions like @code{realloc}, 34 but will behave the same as @code{xmalloc} if memory cannot be found. 35 36 @end deftypefn 37 38 @deftypefn Replacement void* xcalloc (size_t @var{nelem}, size_t @var{elsize}) 39 40 Allocate memory without fail, and set it to zero. This routine functions 41 like @code{calloc}, but will behave the same as @code{xmalloc} if memory 42 cannot be found. 43 44 @end deftypefn 45 46 @deftypefn Replacement void xmalloc_set_program_name (const char *@var{name}) 47 48 You can use this to set the name of the program used by 49 @code{xmalloc_failed} when printing a failure message. 50 51 @end deftypefn 52 53 @deftypefn Replacement void xmalloc_failed (size_t) 54 55 This function is not meant to be called by client code, and is listed 56 here for completeness only. If any of the allocation routines fail, this 57 function will be called to print an error message and terminate execution. 58 59 @end deftypefn 60 61 */ 62 20 63 #ifdef HAVE_CONFIG_H 21 64 #include "config.h" … … 26 69 #include <stdio.h> 27 70 28 #ifdef __STDC__71 #ifdef ANSI_PROTOTYPES 29 72 #include <stddef.h> 30 73 #else … … 78 121 allocated = (char *) sbrk (0) - (char *) &environ; 79 122 fprintf (stderr, 80 "\n%s%s Cannot allocate %lu bytes after allocating%lu bytes\n",123 "\n%s%sout of memory allocating %lu bytes after a total of %lu bytes\n", 81 124 name, *name ? ": " : "", 82 125 (unsigned long) size, (unsigned long) allocated); 83 126 #else /* HAVE_SBRK */ 84 127 fprintf (stderr, 85 "\n%s%s Cannot allocate%lu bytes\n",128 "\n%s%sout of memory allocating %lu bytes\n", 86 129 name, *name ? ": " : "", 87 130 (unsigned long) size); -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.