Initial revision
[deliverable/binutils-gdb.git] / gas / xrealloc.c
CommitLineData
fecd2382
RP
1/* xrealloc.c -new memory or bust-
2 Copyright (C) 1987, 1990, 1991 Free Software Foundation, Inc.
3
4This file is part of GAS, the GNU Assembler.
5
6GAS is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 1, or (at your option)
9any later version.
10
11GAS is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with GAS; see the file COPYING. If not, write to
18the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
19
20
21/* static const char rcsid[] = "$Id$"; */
22
23/*
24
25NAME
26 xrealloc () - get more memory or bust
27INDEX
28 xrealloc () uses realloc ()
29SYNOPSIS
30 char *my_memory;
31
32 my_memory = xrealloc (my_memory, 42);
33 / * my_memory gets (perhaps new) address of 42 chars * /
34
35DESCRIPTION
36
37 Use xrealloc () as an "error-free" realloc ().It does almost the same
38 job. When it cannot honour your request for memory it BOMBS your
39 program with a "virtual memory exceeded" message. Realloc() returns
40 NULL and does not bomb your program.
41
42SEE ALSO
43 realloc ()
44*/
45
46#ifdef __STDC__
47#include <stdlib.h>
48#else
49#ifdef USG
50#include <malloc.h>
51#else
52 char *realloc ();
53#endif /* USG */
54#endif /* __STDC__ */
55
56#define error as_fatal
57
58char *
59xrealloc (ptr, n)
60register char *ptr;
61long n;
62{
63 void error();
64
65 if ((ptr = realloc (ptr, (unsigned)n)) == 0)
66 error ("virtual memory exceeded");
67 return (ptr);
68}
69
70/* end: xrealloc.c */
This page took 0.026798 seconds and 4 git commands to generate.