[warning control patch] simple cases
Gabriel Dos Reis
gdr@integrable-solutions.net
Wed May 18 20:32:00 GMT 2005
DJ Delorie <dj@redhat.com> writes:
| > OK, thanks. But, not before I sent my patch that makes libiberty pass
| > straight through a C++ compiler :-)
|
| Yes please ;-)
OK, here is what it looks like on my disk. No ChangeLog entry yet.
It passed bootstrap and regression test on my laptop
(i686-pc-linux-gnu). I'll test it on a solaris machine (unless
someone here kindly does it) and post proper patch later.
-- Gaby
Index: alloca.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/alloca.c,v
retrieving revision 1.9
diff -p -r1.9 alloca.c
*** alloca.c 26 Mar 2005 19:24:31 -0000 1.9
--- alloca.c 18 May 2005 20:28:39 -0000
*************** C_alloca (size_t size)
*** 191,210 ****
/* Allocate combined header + user data storage. */
{
! register PTR new = xmalloc (sizeof (header) + size);
/* Address of header. */
! if (new == 0)
abort();
! ((header *) new)->h.next = last_alloca_header;
! ((header *) new)->h.deep = depth;
! last_alloca_header = (header *) new;
/* User storage begins just after header. */
! return (PTR) ((char *) new + sizeof (header));
}
}
--- 191,210 ----
/* Allocate combined header + user data storage. */
{
! register void *new_storage = XNEWVEC (char, sizeof (header) + size);
/* Address of header. */
! if (new_storage == 0)
abort();
! ((header *) new_storage)->h.next = last_alloca_header;
! ((header *) new_storage)->h.deep = depth;
! last_alloca_header = (header *) new_storage;
/* User storage begins just after header. */
! return (PTR) ((char *) new_storage + sizeof (header));
}
}
Index: choose-temp.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/choose-temp.c,v
retrieving revision 1.20
diff -p -r1.20 choose-temp.c
*** choose-temp.c 10 May 2005 15:33:14 -0000 1.20
--- choose-temp.c 18 May 2005 20:28:39 -0000
*************** choose_temp_base (void)
*** 61,67 ****
int len;
len = strlen (base);
! temp_filename = xmalloc (len + TEMP_FILE_LEN + 1);
strcpy (temp_filename, base);
strcpy (temp_filename + len, TEMP_FILE);
--- 61,67 ----
int len;
len = strlen (base);
! temp_filename = XNEWVEC (char, len + TEMP_FILE_LEN + 1);
strcpy (temp_filename, base);
strcpy (temp_filename + len, TEMP_FILE);
Index: concat.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/concat.c,v
retrieving revision 1.14
diff -p -r1.14 concat.c
*** concat.c 10 May 2005 15:33:14 -0000 1.14
--- concat.c 18 May 2005 20:28:39 -0000
*************** concat (const char *first, ...)
*** 150,156 ****
/* First compute the size of the result and get sufficient memory. */
VA_OPEN (args, first);
VA_FIXEDARG (args, const char *, first);
! newstr = (char *) xmalloc (vconcat_length (first, args) + 1);
VA_CLOSE (args);
/* Now copy the individual pieces to the result string. */
--- 150,156 ----
/* First compute the size of the result and get sufficient memory. */
VA_OPEN (args, first);
VA_FIXEDARG (args, const char *, first);
! newstr = XNEWVEC (char, vconcat_length (first, args) + 1);
VA_CLOSE (args);
/* Now copy the individual pieces to the result string. */
*************** reconcat (char *optr, const char *first,
*** 188,194 ****
VA_OPEN (args, first);
VA_FIXEDARG (args, char *, optr);
VA_FIXEDARG (args, const char *, first);
! newstr = (char *) xmalloc (vconcat_length (first, args) + 1);
VA_CLOSE (args);
/* Now copy the individual pieces to the result string. */
--- 188,194 ----
VA_OPEN (args, first);
VA_FIXEDARG (args, char *, optr);
VA_FIXEDARG (args, const char *, first);
! newstr = XNEWVEC (char, vconcat_length (first, args) + 1);
VA_CLOSE (args);
/* Now copy the individual pieces to the result string. */
Index: cp-demangle.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/cp-demangle.c,v
retrieving revision 1.80
diff -p -r1.80 cp-demangle.c
*** cp-demangle.c 10 May 2005 15:33:14 -0000 1.80
--- cp-demangle.c 18 May 2005 20:28:40 -0000
*************** struct d_print_template
*** 210,216 ****
/* Next template on the list. */
struct d_print_template *next;
/* This template. */
! const struct demangle_component *template;
};
/* A list of type modifiers. This is used while printing. */
--- 210,216 ----
/* Next template on the list. */
struct d_print_template *next;
/* This template. */
! const struct demangle_component *template_decl;
};
/* A list of type modifiers. This is used while printing. */
*************** d_print_resize (struct d_print_info *dpi
*** 2551,2557 ****
char *newbuf;
newalc = dpi->alc * 2;
! newbuf = realloc (dpi->buf, newalc);
if (newbuf == NULL)
{
free (dpi->buf);
--- 2551,2557 ----
char *newbuf;
newalc = dpi->alc * 2;
! newbuf = (char *) realloc (dpi->buf, newalc);
if (newbuf == NULL)
{
free (dpi->buf);
*************** cplus_demangle_print (int options, const
*** 2629,2635 ****
dpi.options = options;
dpi.alc = estimate + 1;
! dpi.buf = malloc (dpi.alc);
if (dpi.buf == NULL)
{
*palc = 1;
--- 2629,2635 ----
dpi.options = options;
dpi.alc = estimate + 1;
! dpi.buf = (char *) malloc (dpi.alc);
if (dpi.buf == NULL)
{
*palc = 1;
*************** d_print_comp (struct d_print_info *dpi,
*** 2730,2736 ****
{
dpt.next = dpi->templates;
dpi->templates = &dpt;
! dpt.template = typed_name;
}
/* If typed_name is a DEMANGLE_COMPONENT_LOCAL_NAME, then
--- 2730,2736 ----
{
dpt.next = dpi->templates;
dpi->templates = &dpt;
! dpt.template_decl = typed_name;
}
/* If typed_name is a DEMANGLE_COMPONENT_LOCAL_NAME, then
*************** d_print_comp (struct d_print_info *dpi,
*** 2826,2832 ****
return;
}
i = dc->u.s_number.number;
! for (a = d_right (dpi->templates->template);
a != NULL;
a = d_right (a))
{
--- 2826,2832 ----
return;
}
i = dc->u.s_number.number;
! for (a = d_right (dpi->templates->template_decl);
a != NULL;
a = d_right (a))
{
*************** d_print_cast (struct d_print_info *dpi,
*** 3683,3689 ****
dpt.next = dpi->templates;
dpi->templates = &dpt;
! dpt.template = d_left (dc);
d_print_comp (dpi, d_left (d_left (dc)));
--- 3683,3689 ----
dpt.next = dpi->templates;
dpi->templates = &dpt;
! dpt.template_decl = d_left (dc);
d_print_comp (dpi, d_left (d_left (dc)));
*************** d_demangle (const char* mangled, int opt
*** 3764,3770 ****
{
char *r;
! r = malloc (40 + len - 11);
if (r == NULL)
*palc = 1;
else
--- 3764,3770 ----
{
char *r;
! r = (char *) malloc (40 + len - 11);
if (r == NULL)
*palc = 1;
else
Index: cp-demint.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/cp-demint.c,v
retrieving revision 1.4
diff -p -r1.4 cp-demint.c
*** cp-demint.c 10 May 2005 15:33:16 -0000 1.4
--- cp-demint.c 18 May 2005 20:28:41 -0000
*************** cplus_demangle_fill_component (struct de
*** 130,147 ****
int
cplus_demangle_fill_builtin_type (struct demangle_component *p,
! const char *typename)
{
int len;
unsigned int i;
! if (p == NULL || typename == NULL)
return 0;
! len = strlen (typename);
for (i = 0; i < D_BUILTIN_TYPE_COUNT; ++i)
{
if (len == cplus_demangle_builtin_types[i].len
! && strcmp (typename, cplus_demangle_builtin_types[i].name) == 0)
{
p->type = DEMANGLE_COMPONENT_BUILTIN_TYPE;
p->u.s_builtin.type = &cplus_demangle_builtin_types[i];
--- 130,147 ----
int
cplus_demangle_fill_builtin_type (struct demangle_component *p,
! const char *type_name)
{
int len;
unsigned int i;
! if (p == NULL || type_name == NULL)
return 0;
! len = strlen (type_name);
for (i = 0; i < D_BUILTIN_TYPE_COUNT; ++i)
{
if (len == cplus_demangle_builtin_types[i].len
! && strcmp (type_name, cplus_demangle_builtin_types[i].name) == 0)
{
p->type = DEMANGLE_COMPONENT_BUILTIN_TYPE;
p->u.s_builtin.type = &cplus_demangle_builtin_types[i];
Index: cplus-dem.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/cplus-dem.c,v
retrieving revision 1.98
diff -p -r1.98 cplus-dem.c
*** cplus-dem.c 10 May 2005 15:33:16 -0000 1.98
--- cplus-dem.c 18 May 2005 20:28:41 -0000
*************** grow_vect (char **old_vect, size_t *size
*** 892,898 ****
*size *= 2;
if (*size < min_size)
*size = min_size;
! *old_vect = (void *) xrealloc (*old_vect, *size * element_size);
}
}
--- 892,898 ----
*size *= 2;
if (*size < min_size)
*size = min_size;
! *old_vect = XRESIZEVAR (char, *old_vect, *size * element_size);
}
}
*************** work_stuff_copy_to_from (struct work_stu
*** 1102,1157 ****
/* Deep-copy dynamic storage. */
if (from->typevec_size)
! to->typevec
! = (char **) xmalloc (from->typevec_size * sizeof (to->typevec[0]));
for (i = 0; i < from->ntypes; i++)
{
int len = strlen (from->typevec[i]) + 1;
! to->typevec[i] = xmalloc (len);
memcpy (to->typevec[i], from->typevec[i], len);
}
if (from->ksize)
! to->ktypevec
! = (char **) xmalloc (from->ksize * sizeof (to->ktypevec[0]));
for (i = 0; i < from->numk; i++)
{
int len = strlen (from->ktypevec[i]) + 1;
! to->ktypevec[i] = xmalloc (len);
memcpy (to->ktypevec[i], from->ktypevec[i], len);
}
if (from->bsize)
! to->btypevec
! = (char **) xmalloc (from->bsize * sizeof (to->btypevec[0]));
for (i = 0; i < from->numb; i++)
{
int len = strlen (from->btypevec[i]) + 1;
! to->btypevec[i] = xmalloc (len);
memcpy (to->btypevec[i], from->btypevec[i], len);
}
if (from->ntmpl_args)
! to->tmpl_argvec
! = (char **) xmalloc (from->ntmpl_args * sizeof (to->tmpl_argvec[0]));
for (i = 0; i < from->ntmpl_args; i++)
{
int len = strlen (from->tmpl_argvec[i]) + 1;
! to->tmpl_argvec[i] = xmalloc (len);
memcpy (to->tmpl_argvec[i], from->tmpl_argvec[i], len);
}
if (from->previous_argument)
{
! to->previous_argument = (string*) xmalloc (sizeof (string));
string_init (to->previous_argument);
string_appends (to->previous_argument, from->previous_argument);
}
--- 1102,1153 ----
/* Deep-copy dynamic storage. */
if (from->typevec_size)
! to->typevec = XNEWVEC (char *, from->typevec_size);
for (i = 0; i < from->ntypes; i++)
{
int len = strlen (from->typevec[i]) + 1;
! to->typevec[i] = XNEWVEC (char, len);
memcpy (to->typevec[i], from->typevec[i], len);
}
if (from->ksize)
! to->ktypevec = XNEWVEC (char *, from->ksize);
for (i = 0; i < from->numk; i++)
{
int len = strlen (from->ktypevec[i]) + 1;
! to->ktypevec[i] = XNEWVEC (char, len);
memcpy (to->ktypevec[i], from->ktypevec[i], len);
}
if (from->bsize)
! to->btypevec = XNEWVEC (char *, from->bsize);
for (i = 0; i < from->numb; i++)
{
int len = strlen (from->btypevec[i]) + 1;
! to->btypevec[i] = XNEWVEC (char , len);
memcpy (to->btypevec[i], from->btypevec[i], len);
}
if (from->ntmpl_args)
! to->tmpl_argvec = XNEWVEC (char *, from->ntmpl_args);
for (i = 0; i < from->ntmpl_args; i++)
{
int len = strlen (from->tmpl_argvec[i]) + 1;
! to->tmpl_argvec[i] = XNEWVEC (char, len);
memcpy (to->tmpl_argvec[i], from->tmpl_argvec[i], len);
}
if (from->previous_argument)
{
! to->previous_argument = XNEW (string);
string_init (to->previous_argument);
string_appends (to->previous_argument, from->previous_argument);
}
*************** demangle_template_value_parm (struct wor
*** 1895,1901 ****
string_appendn (s, "0", 1);
else
{
! char *p = xmalloc (symbol_len + 1), *q;
strncpy (p, *mangled, symbol_len);
p [symbol_len] = '\0';
/* We use cplus_demangle here, rather than
--- 1891,1897 ----
string_appendn (s, "0", 1);
else
{
! char *p = XNEWVEC (char, symbol_len + 1), *q;
strncpy (p, *mangled, symbol_len);
p [symbol_len] = '\0';
/* We use cplus_demangle here, rather than
*************** demangle_template (struct work_stuff *wo
*** 2001,2007 ****
if (!is_type)
{
/* Create an array for saving the template argument values. */
! work->tmpl_argvec = (char**) xmalloc (r * sizeof (char *));
work->ntmpl_args = r;
for (i = 0; i < r; i++)
work->tmpl_argvec[i] = 0;
--- 1997,2003 ----
if (!is_type)
{
/* Create an array for saving the template argument values. */
! work->tmpl_argvec = XNEWVEC (char *, r);
work->ntmpl_args = r;
for (i = 0; i < r; i++)
work->tmpl_argvec[i] = 0;
*************** demangle_template (struct work_stuff *wo
*** 2026,2032 ****
{
/* Save the template argument. */
int len = temp.p - temp.b;
! work->tmpl_argvec[i] = xmalloc (len + 1);
memcpy (work->tmpl_argvec[i], temp.b, len);
work->tmpl_argvec[i][len] = '\0';
}
--- 2022,2028 ----
{
/* Save the template argument. */
int len = temp.p - temp.b;
! work->tmpl_argvec[i] = XNEWVEC (char, len + 1);
memcpy (work->tmpl_argvec[i], temp.b, len);
work->tmpl_argvec[i][len] = '\0';
}
*************** demangle_template (struct work_stuff *wo
*** 2054,2060 ****
{
/* Save the template argument. */
int len = r2;
! work->tmpl_argvec[i] = xmalloc (len + 1);
memcpy (work->tmpl_argvec[i], *mangled, len);
work->tmpl_argvec[i][len] = '\0';
}
--- 2050,2056 ----
{
/* Save the template argument. */
int len = r2;
! work->tmpl_argvec[i] = XNEWVEC (char, len + 1);
memcpy (work->tmpl_argvec[i], *mangled, len);
work->tmpl_argvec[i][len] = '\0';
}
*************** demangle_template (struct work_stuff *wo
*** 2100,2106 ****
if (!is_type)
{
int len = s->p - s->b;
! work->tmpl_argvec[i] = xmalloc (len + 1);
memcpy (work->tmpl_argvec[i], s->b, len);
work->tmpl_argvec[i][len] = '\0';
--- 2096,2102 ----
if (!is_type)
{
int len = s->p - s->b;
! work->tmpl_argvec[i] = XNEWVEC (char, len + 1);
memcpy (work->tmpl_argvec[i], s->b, len);
work->tmpl_argvec[i][len] = '\0';
*************** recursively_demangle(struct work_stuff *
*** 2998,3004 ****
char * recurse = (char *)NULL;
char * recurse_dem = (char *)NULL;
! recurse = (char *) xmalloc (namelength + 1);
memcpy (recurse, *mangled, namelength);
recurse[namelength] = '\000';
--- 2994,3000 ----
char * recurse = (char *)NULL;
char * recurse_dem = (char *)NULL;
! recurse = XNEWVEC (char, namelength + 1);
memcpy (recurse, *mangled, namelength);
recurse[namelength] = '\000';
*************** do_hpacc_template_literal (struct work_s
*** 3969,3975 ****
string_append (result, "&");
/* Now recursively demangle the literal name */
! recurse = (char *) xmalloc (literal_len + 1);
memcpy (recurse, *mangled, literal_len);
recurse[literal_len] = '\000';
--- 3965,3971 ----
string_append (result, "&");
/* Now recursively demangle the literal name */
! recurse = XNEWVEC (char, literal_len + 1);
memcpy (recurse, *mangled, literal_len);
recurse[literal_len] = '\000';
*************** do_arg (struct work_stuff *work, const c
*** 4071,4077 ****
if (work->previous_argument)
string_delete (work->previous_argument);
else
! work->previous_argument = (string*) xmalloc (sizeof (string));
if (!do_type (work, mangled, work->previous_argument))
return 0;
--- 4067,4073 ----
if (work->previous_argument)
string_delete (work->previous_argument);
else
! work->previous_argument = XNEW (string);
if (!do_type (work, mangled, work->previous_argument))
return 0;
*************** remember_type (struct work_stuff *work,
*** 4095,4112 ****
if (work -> typevec_size == 0)
{
work -> typevec_size = 3;
! work -> typevec
! = (char **) xmalloc (sizeof (char *) * work -> typevec_size);
}
else
{
work -> typevec_size *= 2;
work -> typevec
! = (char **) xrealloc ((char *)work -> typevec,
! sizeof (char *) * work -> typevec_size);
}
}
! tem = xmalloc (len + 1);
memcpy (tem, start, len);
tem[len] = '\0';
work -> typevec[work -> ntypes++] = tem;
--- 4091,4106 ----
if (work -> typevec_size == 0)
{
work -> typevec_size = 3;
! work -> typevec = XNEWVEC (char *, work->typevec_size);
}
else
{
work -> typevec_size *= 2;
work -> typevec
! = XRESIZEVEC (char *, work->typevec, work->typevec_size);
}
}
! tem = XNEWVEC (char, len + 1);
memcpy (tem, start, len);
tem[len] = '\0';
work -> typevec[work -> ntypes++] = tem;
*************** remember_Ktype (struct work_stuff *work,
*** 4124,4141 ****
if (work -> ksize == 0)
{
work -> ksize = 5;
! work -> ktypevec
! = (char **) xmalloc (sizeof (char *) * work -> ksize);
}
else
{
work -> ksize *= 2;
work -> ktypevec
! = (char **) xrealloc ((char *)work -> ktypevec,
! sizeof (char *) * work -> ksize);
}
}
! tem = xmalloc (len + 1);
memcpy (tem, start, len);
tem[len] = '\0';
work -> ktypevec[work -> numk++] = tem;
--- 4118,4133 ----
if (work -> ksize == 0)
{
work -> ksize = 5;
! work -> ktypevec = XNEWVEC (char *, work->ksize);
}
else
{
work -> ksize *= 2;
work -> ktypevec
! = XRESIZEVEC (char *, work->ktypevec, work->ksize);
}
}
! tem = XNEWVEC (char, len + 1);
memcpy (tem, start, len);
tem[len] = '\0';
work -> ktypevec[work -> numk++] = tem;
*************** register_Btype (struct work_stuff *work)
*** 4155,4169 ****
if (work -> bsize == 0)
{
work -> bsize = 5;
! work -> btypevec
! = (char **) xmalloc (sizeof (char *) * work -> bsize);
}
else
{
work -> bsize *= 2;
work -> btypevec
! = (char **) xrealloc ((char *)work -> btypevec,
! sizeof (char *) * work -> bsize);
}
}
ret = work -> numb++;
--- 4147,4159 ----
if (work -> bsize == 0)
{
work -> bsize = 5;
! work -> btypevec = XNEWVEC (char *, work->bsize);
}
else
{
work -> bsize *= 2;
work -> btypevec
! = XRESIZEVEC (char *, work->btypevec, work->bsize);
}
}
ret = work -> numb++;
*************** remember_Btype (struct work_stuff *work,
*** 4179,4185 ****
{
char *tem;
! tem = xmalloc (len + 1);
memcpy (tem, start, len);
tem[len] = '\0';
work -> btypevec[index] = tem;
--- 4169,4175 ----
{
char *tem;
! tem = XNEWVEC (char, len + 1);
memcpy (tem, start, len);
tem[len] = '\0';
work -> btypevec[index] = tem;
*************** string_need (string *s, int n)
*** 4600,4606 ****
{
n = 32;
}
! s->p = s->b = xmalloc (n);
s->e = s->b + n;
}
else if (s->e - s->p < n)
--- 4590,4596 ----
{
n = 32;
}
! s->p = s->b = XNEWVEC (char, n);
s->e = s->b + n;
}
else if (s->e - s->p < n)
*************** string_need (string *s, int n)
*** 4608,4614 ****
tem = s->p - s->b;
n += tem;
n *= 2;
! s->b = xrealloc (s->b, n);
s->p = s->b + tem;
s->e = s->b + n;
}
--- 4598,4604 ----
tem = s->p - s->b;
n += tem;
n *= 2;
! s->b = XRESIZEVEC (char, s->b, n);
s->p = s->b + tem;
s->e = s->b + n;
}
Index: dyn-string.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/dyn-string.c,v
retrieving revision 1.10
diff -p -r1.10 dyn-string.c
*** dyn-string.c 10 May 2005 15:33:16 -0000 1.10
--- dyn-string.c 18 May 2005 20:28:41 -0000
*************** dyn_string_init (struct dyn_string *ds_s
*** 67,73 ****
if (ds_struct_ptr->s == NULL)
return 0;
#else
! ds_struct_ptr->s = (char *) xmalloc (space);
#endif
ds_struct_ptr->allocated = space;
ds_struct_ptr->length = 0;
--- 67,73 ----
if (ds_struct_ptr->s == NULL)
return 0;
#else
! ds_struct_ptr->s = XNEWVEC (char, space);
#endif
ds_struct_ptr->allocated = space;
ds_struct_ptr->length = 0;
*************** dyn_string_new (int space)
*** 96,102 ****
return NULL;
}
#else
! result = (dyn_string_t) xmalloc (sizeof (struct dyn_string));
dyn_string_init (result, space);
#endif
return result;
--- 96,102 ----
return NULL;
}
#else
! result = XNEW (struct dyn_string);
dyn_string_init (result, space);
#endif
return result;
*************** dyn_string_resize (dyn_string_t ds, int
*** 159,165 ****
return NULL;
}
#else
! ds->s = (char *) xrealloc (ds->s, ds->allocated);
#endif
}
--- 159,165 ----
return NULL;
}
#else
! ds->s = XRESIZEVEC (char, ds->s, ds->allocated);
#endif
}
Index: getpwd.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/getpwd.c,v
retrieving revision 1.7
diff -p -r1.7 getpwd.c
*** getpwd.c 16 May 2005 13:52:39 -0000 1.7
--- getpwd.c 18 May 2005 20:28:42 -0000
*************** getpwd (void)
*** 84,90 ****
&& dotstat.st_dev == pwdstat.st_dev))
/* The shortcut didn't work. Try the slow, ``sure'' way. */
! for (s = GUESSPATHLEN; ! getcwd (p = xmalloc (s), s); s *= 2)
{
int e = errno;
free (p);
--- 84,90 ----
&& dotstat.st_dev == pwdstat.st_dev))
/* The shortcut didn't work. Try the slow, ``sure'' way. */
! for (s = GUESSPATHLEN; !getcwd (p = XNEWVEC (char, s), s); s *= 2)
{
int e = errno;
free (p);
*************** getpwd (void)
*** 117,123 ****
static char *pwd = 0;
if (!pwd)
! pwd = getcwd (xmalloc (MAXPATHLEN + 1), MAXPATHLEN + 1
#ifdef VMS
, 0
#endif
--- 117,123 ----
static char *pwd = 0;
if (!pwd)
! pwd = getcwd (XNEWVEC (char, MAXPATHLEN + 1), MAXPATHLEN + 1
#ifdef VMS
, 0
#endif
Index: hashtab.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/hashtab.c,v
retrieving revision 1.44
diff -p -r1.44 hashtab.c
*** hashtab.c 10 May 2005 15:33:17 -0000 1.44
--- hashtab.c 18 May 2005 20:28:42 -0000
*************** htab_create_alloc (size_t size, htab_has
*** 317,331 ****
an extra argument. */
htab_t
! htab_create_alloc_ex (size, hash_f, eq_f, del_f, alloc_arg, alloc_f,
! free_f)
! size_t size;
! htab_hash hash_f;
! htab_eq eq_f;
! htab_del del_f;
! PTR alloc_arg;
! htab_alloc_with_arg alloc_f;
! htab_free_with_arg free_f;
{
htab_t result;
unsigned int size_prime_index;
--- 317,326 ----
an extra argument. */
htab_t
! htab_create_alloc_ex (size_t size, htab_hash hash_f, htab_eq eq_f,
! htab_del del_f, void *alloc_arg,
! htab_alloc_with_arg alloc_f,
! htab_free_with_arg free_f)
{
htab_t result;
unsigned int size_prime_index;
Index: lrealpath.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/lrealpath.c,v
retrieving revision 1.4
diff -p -r1.4 lrealpath.c
*** lrealpath.c 10 May 2005 15:33:17 -0000 1.4
--- lrealpath.c 18 May 2005 20:28:42 -0000
*************** lrealpath (const char *filename)
*** 117,123 ****
{
/* PATH_MAX is bounded. */
char *buf, *rp, *ret;
! buf = malloc (path_max);
if (buf == NULL)
return NULL;
rp = realpath (filename, buf);
--- 117,123 ----
{
/* PATH_MAX is bounded. */
char *buf, *rp, *ret;
! buf = (char *) malloc (path_max);
if (buf == NULL)
return NULL;
rp = realpath (filename, buf);
Index: make-relative-prefix.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/make-relative-prefix.c,v
retrieving revision 1.6
diff -p -r1.6 make-relative-prefix.c
*** make-relative-prefix.c 10 May 2005 15:33:17 -0000 1.6
--- make-relative-prefix.c 18 May 2005 20:28:42 -0000
*************** static void free_split_directories (char
*** 102,108 ****
static char *
save_string (const char *s, int len)
{
! char *result = malloc (len + 1);
memcpy (result, s, len);
result[len] = 0;
--- 102,108 ----
static char *
save_string (const char *s, int len)
{
! char *result = (char *) malloc (len + 1);
memcpy (result, s, len);
result[len] = 0;
Index: make-temp-file.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/make-temp-file.c,v
retrieving revision 1.7
diff -p -r1.7 make-temp-file.c
*** make-temp-file.c 10 May 2005 15:33:17 -0000 1.7
--- make-temp-file.c 18 May 2005 20:28:42 -0000
*************** extern int mkstemps (char *, int);
*** 61,70 ****
If success, DIR is returned.
Otherwise NULL is returned. */
! static inline const char *try (const char *, const char *);
static inline const char *
! try (const char *dir, const char *base)
{
if (base != 0)
return base;
--- 61,70 ----
If success, DIR is returned.
Otherwise NULL is returned. */
! static inline const char *try_dir (const char *, const char *);
static inline const char *
! try_dir (const char *dir, const char *base)
{
if (base != 0)
return base;
*************** choose_tmpdir (void)
*** 103,120 ****
if (memoized_tmpdir)
return memoized_tmpdir;
! base = try (getenv ("TMPDIR"), base);
! base = try (getenv ("TMP"), base);
! base = try (getenv ("TEMP"), base);
#ifdef P_tmpdir
! base = try (P_tmpdir, base);
#endif
/* Try /var/tmp, /usr/tmp, then /tmp. */
! base = try (vartmp, base);
! base = try (usrtmp, base);
! base = try (tmp, base);
/* If all else fails, use the current directory! */
if (base == 0)
--- 103,120 ----
if (memoized_tmpdir)
return memoized_tmpdir;
! base = try_dir (getenv ("TMPDIR"), base);
! base = try_dir (getenv ("TMP"), base);
! base = try_dir (getenv ("TEMP"), base);
#ifdef P_tmpdir
! base = try_dir (P_tmpdir, base);
#endif
/* Try /var/tmp, /usr/tmp, then /tmp. */
! base = try_dir (vartmp, base);
! base = try_dir (usrtmp, base);
! base = try_dir (tmp, base);
/* If all else fails, use the current directory! */
if (base == 0)
*************** choose_tmpdir (void)
*** 123,129 ****
/* Append DIR_SEPARATOR to the directory we've chosen
and return it. */
len = strlen (base);
! tmpdir = xmalloc (len + 2);
strcpy (tmpdir, base);
tmpdir[len] = DIR_SEPARATOR;
tmpdir[len+1] = '\0';
--- 123,129 ----
/* Append DIR_SEPARATOR to the directory we've chosen
and return it. */
len = strlen (base);
! tmpdir = XNEWVEC (char, len + 2);
strcpy (tmpdir, base);
tmpdir[len] = DIR_SEPARATOR;
tmpdir[len+1] = '\0';
*************** make_temp_file (const char *suffix)
*** 158,164 ****
base_len = strlen (base);
suffix_len = strlen (suffix);
! temp_filename = xmalloc (base_len
+ TEMP_FILE_LEN
+ suffix_len + 1);
strcpy (temp_filename, base);
--- 158,164 ----
base_len = strlen (base);
suffix_len = strlen (suffix);
! temp_filename = XNEWVEC (char, base_len
+ TEMP_FILE_LEN
+ suffix_len + 1);
strcpy (temp_filename, base);
Index: mkstemps.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/mkstemps.c,v
retrieving revision 1.10
diff -p -r1.10 mkstemps.c
*** mkstemps.c 10 May 2005 15:33:17 -0000 1.10
--- mkstemps.c 18 May 2005 20:28:42 -0000
*************** typedef unsigned long gcc_uint64_t;
*** 51,67 ****
/*
! @deftypefn Replacement int mkstemps (char *@var{template}, int @var{suffix_len})
! Generate a unique temporary file name from @var{template}.
! @var{template} has the form:
@example
@var{path}/ccXXXXXX@var{suffix}
@end example
@var{suffix_len} tells us how long @var{suffix} is (it can be zero
! length). The last six characters of @var{template} before @var{suffix}
must be @samp{XXXXXX}; they are replaced with a string that makes the
filename unique. Returns a file descriptor open on the file for
reading and writing.
--- 51,67 ----
/*
! @deftypefn Replacement int mkstemps (char *@var{pattern}, int @var{suffix_len})
! Generate a unique temporary file name from @var{pattern}.
! @var{pattern} has the form:
@example
@var{path}/ccXXXXXX@var{suffix}
@end example
@var{suffix_len} tells us how long @var{suffix} is (it can be zero
! length). The last six characters of @var{pattern} before @var{suffix}
must be @samp{XXXXXX}; they are replaced with a string that makes the
filename unique. Returns a file descriptor open on the file for
reading and writing.
*************** reading and writing.
*** 71,77 ****
*/
int
! mkstemps (char *template, int suffix_len)
{
static const char letters[]
= "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
--- 71,77 ----
*/
int
! mkstemps (char *pattern, int suffix_len)
{
static const char letters[]
= "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
*************** mkstemps (char *template, int suffix_len
*** 83,97 ****
size_t len;
int count;
! len = strlen (template);
if ((int) len < 6 + suffix_len
! || strncmp (&template[len - 6 - suffix_len], "XXXXXX", 6))
{
return -1;
}
! XXXXXX = &template[len - 6 - suffix_len];
#ifdef HAVE_GETTIMEOFDAY
/* Get some more or less random data. */
--- 83,97 ----
size_t len;
int count;
! len = strlen (pattern);
if ((int) len < 6 + suffix_len
! || strncmp (&pattern[len - 6 - suffix_len], "XXXXXX", 6))
{
return -1;
}
! XXXXXX = &pattern[len - 6 - suffix_len];
#ifdef HAVE_GETTIMEOFDAY
/* Get some more or less random data. */
*************** mkstemps (char *template, int suffix_len
*** 119,125 ****
v /= 62;
XXXXXX[5] = letters[v % 62];
! fd = open (template, O_RDWR|O_CREAT|O_EXCL, 0600);
if (fd >= 0)
/* The file does not exist. */
return fd;
--- 119,125 ----
v /= 62;
XXXXXX[5] = letters[v % 62];
! fd = open (pattern, O_RDWR|O_CREAT|O_EXCL, 0600);
if (fd >= 0)
/* The file does not exist. */
return fd;
*************** mkstemps (char *template, int suffix_len
*** 131,136 ****
}
/* We return the null string if we can't find a unique file name. */
! template[0] = '\0';
return -1;
}
--- 131,136 ----
}
/* We return the null string if we can't find a unique file name. */
! pattern[0] = '\0';
return -1;
}
Index: pex-common.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/pex-common.c,v
retrieving revision 1.2
diff -p -r1.2 pex-common.c
*** pex-common.c 10 May 2005 15:33:17 -0000 1.2
--- pex-common.c 18 May 2005 20:28:42 -0000
*************** pex_init_common (int flags, const char *
*** 55,61 ****
{
struct pex_obj *obj;
! obj = xmalloc (sizeof (*obj));
obj->flags = flags;
obj->pname = pname;
obj->tempbase = tempbase;
--- 55,61 ----
{
struct pex_obj *obj;
! obj = XNEW (struct pex_obj);
obj->flags = flags;
obj->pname = pname;
obj->tempbase = tempbase;
*************** pex_add_remove (struct pex_obj *obj, con
*** 83,89 ****
char *add;
++obj->remove_count;
! obj->remove = xrealloc (obj->remove, obj->remove_count * sizeof (char *));
if (allocated)
add = (char *) name;
else
--- 83,89 ----
char *add;
++obj->remove_count;
! obj->remove = XRESIZEVEC (char *, obj->remove, obj->remove_count);
if (allocated)
add = (char *) name;
else
*************** pex_run (struct pex_obj *obj, int flags,
*** 280,286 ****
goto error_exit;
++obj->count;
! obj->children = xrealloc (obj->children, obj->count * sizeof (long));
obj->children[obj->count - 1] = pid;
return NULL;
--- 280,286 ----
goto error_exit;
++obj->count;
! obj->children = XRESIZEVEC (long, obj->children, obj->count);
obj->children[obj->count - 1] = pid;
return NULL;
*************** pex_get_status_and_time (struct pex_obj
*** 352,360 ****
if (obj->number_waited == obj->count)
return 1;
! obj->status = xrealloc (obj->status, obj->count * sizeof (int));
if ((obj->flags & PEX_RECORD_TIMES) != 0)
! obj->time = xrealloc (obj->time, obj->count * sizeof (struct pex_time));
ret = 1;
for (i = obj->number_waited; i < obj->count; ++i)
--- 352,360 ----
if (obj->number_waited == obj->count)
return 1;
! obj->status = XRESIZEVEC (int, obj->status, obj->count);
if ((obj->flags & PEX_RECORD_TIMES) != 0)
! obj->time = XRESIZEVEC (struct pex_time, obj->time, obj->count);
ret = 1;
for (i = obj->number_waited; i < obj->count; ++i)
Index: pex-djgpp.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/pex-djgpp.c,v
retrieving revision 1.5
diff -p -r1.5 pex-djgpp.c
*** pex-djgpp.c 12 May 2005 03:44:58 -0000 1.5
--- pex-djgpp.c 18 May 2005 20:28:42 -0000
*************** pex_djgpp_exec_child (struct pex_obj *ob
*** 257,263 ****
is the number of children which have executed before this
one. */
statuses = (int *) obj->sysdep;
! statuses = xrealloc (statuses, (obj->count + 1) * sizeof (int));
statuses[obj->count] = status;
obj->sysdep = (void *) statuses;
--- 257,263 ----
is the number of children which have executed before this
one. */
statuses = (int *) obj->sysdep;
! statuses = XRESIZEVEC (int, statuses, obj->count + 1);
statuses[obj->count] = status;
obj->sysdep = (void *) statuses;
Index: pex-msdos.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/pex-msdos.c,v
retrieving revision 1.4
diff -p -r1.4 pex-msdos.c
*** pex-msdos.c 10 May 2005 15:33:18 -0000 1.4
--- pex-msdos.c 18 May 2005 20:28:42 -0000
*************** pex_init (int flags, const char *pname,
*** 89,95 ****
ret = pex_init_common (flags, pname, tempbase, funcs);
! ret->sysdep = xmalloc (sizeof (struct pex_msdos));
for (i = 0; i < PEX_MSDOS_FILE_COUNT; ++i)
ret->files[i] = NULL;
ret->statuses = NULL;
--- 89,95 ----
ret = pex_init_common (flags, pname, tempbase, funcs);
! ret->sysdep = XNEW (struct pex_msdos);
for (i = 0; i < PEX_MSDOS_FILE_COUNT; ++i)
ret->files[i] = NULL;
ret->statuses = NULL;
*************** pex_msdos_exec_child (struct pex_obj *ob
*** 210,216 ****
outfile = ms->files[outindex];
}
! scmd = xmalloc (strlen (program)
+ ((flags & PEXECUTE_SEARCH) != 0 ? 4 : 0)
+ strlen (rf)
+ strlen (infile)
--- 210,216 ----
outfile = ms->files[outindex];
}
! scmd = XNEWVEC (char, strlen (program)
+ ((flags & PEXECUTE_SEARCH) != 0 ? 4 : 0)
+ strlen (rf)
+ strlen (infile)
*************** pex_msdos_exec_child (struct pex_obj *ob
*** 269,275 ****
/* Save the exit status for later. When we are called, obj->count
is the number of children which have executed before this
one. */
! ms->statuses = xrealloc (ms->statuses, (obj->count + 1) * sizeof (int));
ms->statuses[obj->count] = status;
return obj->count;
--- 269,275 ----
/* Save the exit status for later. When we are called, obj->count
is the number of children which have executed before this
one. */
! ms->statuses = XRESIZEVEC(int, ms->statuses, obj->count + 1);
ms->statuses[obj->count] = status;
return obj->count;
Index: pex-unix.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/pex-unix.c,v
retrieving revision 1.6
diff -p -r1.6 pex-unix.c
*** pex-unix.c 10 May 2005 15:33:18 -0000 1.6
--- pex-unix.c 18 May 2005 20:28:42 -0000
*************** pex_wait (struct pex_obj *obj, pid_t pid
*** 252,258 ****
return cpid;
}
! psl = xmalloc (sizeof (struct status_list));
psl->pid = cpid;
psl->status = *status;
if (time != NULL)
--- 252,258 ----
return cpid;
}
! psl = XNEW (struct status_list);
psl->pid = cpid;
psl->status = *status;
if (time != NULL)
Index: pex-win32.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/pex-win32.c,v
retrieving revision 1.7
diff -p -r1.7 pex-win32.c
*** pex-win32.c 10 May 2005 15:33:18 -0000 1.7
--- pex-win32.c 18 May 2005 20:28:42 -0000
*************** fix_argv (char * const *argvec)
*** 79,85 ****
for (i = 0; argvec[i] != NULL; i++)
;
! argv = xmalloc ((i + 1) * sizeof (char *));
for (i = 0; argvec[i] != NULL; i++)
argv[i] = xstrdup (argvec[i]);
argv[i] = NULL;
--- 79,85 ----
for (i = 0; argvec[i] != NULL; i++)
;
! argv = XNEWVEC (char *, i + 1);
for (i = 0; argvec[i] != NULL; i++)
argv[i] = xstrdup (argvec[i]);
argv[i] = NULL;
*************** fix_argv (char * const *argvec)
*** 105,111 ****
{
if (temp[j] == '"')
{
! newtemp = xmalloc (len + 2);
strncpy (newtemp, temp, j);
newtemp [j] = '\\';
strncpy (&newtemp [j+1], &temp [j], len-j);
--- 105,111 ----
{
if (temp[j] == '"')
{
! newtemp = XNEWVEC (char, len + 2);
strncpy (newtemp, temp, j);
newtemp [j] = '\\';
strncpy (&newtemp [j+1], &temp [j], len-j);
*************** fix_argv (char * const *argvec)
*** 150,156 ****
len += 2; /* and for the enclosing quotes. */
! temp = xmalloc (len + 1);
temp[0] = '"';
strcpy (temp + 1, argv[i]);
if (trailing_backslash)
--- 150,156 ----
len += 2; /* and for the enclosing quotes. */
! temp = XNEWVEC (char, len + 1);
temp[0] = '"';
strcpy (temp + 1, argv[i]);
if (trailing_backslash)
Index: pexecute.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/pexecute.c,v
retrieving revision 1.26
diff -p -r1.26 pexecute.c
*** pexecute.c 10 May 2005 15:33:18 -0000 1.26
--- pexecute.c 18 May 2005 20:28:42 -0000
*************** pwait (int pid, int *status, int flags A
*** 99,105 ****
{
int *vector;
! vector = xmalloc (idx * sizeof (int));
if (!pex_get_status (pex, idx, vector))
return -1;
*status = vector[pid];
--- 99,105 ----
{
int *vector;
! vector = XNEWVEC (int, idx);
if (!pex_get_status (pex, idx, vector))
return -1;
*status = vector[pid];
Index: sort.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/sort.c,v
retrieving revision 1.7
diff -p -r1.7 sort.c
*** sort.c 10 May 2005 15:33:18 -0000 1.7
--- sort.c 18 May 2005 20:28:44 -0000
*************** int main (int argc, char **argv)
*** 155,162 ****
else
k = 10;
! pointers = xmalloc (k * sizeof (void *));
! work = xmalloc (k * sizeof (void *));
for (i = 0; i < k; ++i)
{
--- 155,162 ----
else
k = 10;
! pointers = XNEWVEC (void*, k);
! work = XNEWVEC (void*, k);
for (i = 0; i < k; ++i)
{
Index: spaces.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/spaces.c,v
retrieving revision 1.6
diff -p -r1.6 spaces.c
*** spaces.c 10 May 2005 15:33:18 -0000 1.6
--- spaces.c 18 May 2005 20:28:44 -0000
*************** spaces (int count)
*** 57,63 ****
{
free (buf);
}
! buf = malloc (count + 1);
if (buf == (char *) 0)
return 0;
for (t = buf + count ; t != buf ; )
--- 57,63 ----
{
free (buf);
}
! buf = (char *) malloc (count + 1);
if (buf == (char *) 0)
return 0;
for (t = buf + count ; t != buf ; )
Index: ternary.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/ternary.c,v
retrieving revision 1.4
diff -p -r1.4 ternary.c
*** ternary.c 10 May 2005 15:33:18 -0000 1.4
--- ternary.c 18 May 2005 20:28:44 -0000
*************** ternary_insert (ternary_tree *root, cons
*** 74,80 ****
for (;;)
{
/* Allocate the memory for the node, and fill it in */
! *pcurr = (ternary_tree) xmalloc (sizeof (ternary_node));
curr = *pcurr;
curr->splitchar = *s;
curr->lokid = curr->hikid = curr->eqkid = 0;
--- 74,80 ----
for (;;)
{
/* Allocate the memory for the node, and fill it in */
! *pcurr = XNEW (ternary_node);
curr = *pcurr;
curr->splitchar = *s;
curr->lokid = curr->hikid = curr->eqkid = 0;
Index: xmalloc.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/xmalloc.c,v
retrieving revision 1.18
diff -p -r1.18 xmalloc.c
*** xmalloc.c 10 May 2005 15:33:18 -0000 1.18
--- xmalloc.c 18 May 2005 20:28:44 -0000
*************** function will be called to print an erro
*** 74,84 ****
--- 74,90 ----
#include <stdlib.h>
#include <unixlib.h>
#else
+ # ifdef __cplusplus
+ extern "C" {
+ # endif /* __cplusplus */
/* For systems with larger pointers than ints, these must be declared. */
PTR malloc (size_t);
PTR realloc (PTR, size_t);
PTR calloc (size_t, size_t);
PTR sbrk (ptrdiff_t);
+ # ifdef __cplusplus
+ }
+ # endif /* __cplusplus */
#endif
/* The program name if set. */
Index: xstrdup.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/xstrdup.c,v
retrieving revision 1.9
diff -p -r1.9 xstrdup.c
*** xstrdup.c 28 Mar 2005 01:28:01 -0000 1.9
--- xstrdup.c 18 May 2005 20:28:44 -0000
*************** char *
*** 31,36 ****
xstrdup (const char *s)
{
register size_t len = strlen (s) + 1;
! register char *ret = xmalloc (len);
return (char *) memcpy (ret, s, len);
}
--- 31,36 ----
xstrdup (const char *s)
{
register size_t len = strlen (s) + 1;
! register char *ret = XNEWVEC (char, len);
return (char *) memcpy (ret, s, len);
}
Index: xstrerror.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/xstrerror.c,v
retrieving revision 1.6
diff -p -r1.6 xstrerror.c
*** xstrerror.c 28 Mar 2005 01:28:01 -0000 1.6
--- xstrerror.c 18 May 2005 20:28:44 -0000
*************** extern char *strerror (int,...);
*** 27,32 ****
--- 27,35 ----
#endif /* VMS */
#ifndef DONT_DECLARE_STRERROR
+ # ifdef __cplusplus
+ extern "C"
+ # endif /* __cplusplus */
extern char *strerror (int);
#endif
Index: xstrndup.c
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/xstrndup.c,v
retrieving revision 1.3
diff -p -r1.3 xstrndup.c
*** xstrndup.c 10 May 2005 15:33:18 -0000 1.3
--- xstrndup.c 18 May 2005 20:28:44 -0000
*************** xstrndup (const char *s, size_t n)
*** 53,60 ****
if (n < len)
len = n;
! result = xmalloc (len + 1);
result[len] = '\0';
! return memcpy (result, s, len);
}
--- 53,60 ----
if (n < len)
len = n;
! result = XNEWVEC (char, len + 1);
result[len] = '\0';
! return (char *) memcpy (result, s, len);
}
More information about the Gcc-patches
mailing list