/* Virtual array support.
- Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2006, 2007
+ Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2006, 2007, 2008
Free Software Foundation, Inc.
Contributed by Cygnus Solutions.
static hashval_t
hash_descriptor (const void *p)
{
- const struct varray_descriptor *d = p;
+ const struct varray_descriptor *d = (const struct varray_descriptor *) p;
return htab_hash_pointer (d->name);
}
static int
eq_descriptor (const void *p1, const void *p2)
{
- const struct varray_descriptor *d = p1;
+ const struct varray_descriptor *d = (const struct varray_descriptor *) p1;
return d->name == p2;
}
1);
if (*slot)
return *slot;
- *slot = xcalloc (sizeof (**slot), 1);
+ *slot = XCNEW (struct varray_descriptor);
(*slot)->name = name;
return *slot;
}
desc->allocated += data_size + VARRAY_HDR_SIZE;
#endif
if (element[element_kind].uses_ggc)
- ptr = ggc_alloc_cleared (VARRAY_HDR_SIZE + data_size);
+ ptr = GGC_CNEWVAR (struct varray_head_tag, VARRAY_HDR_SIZE + data_size);
else
- ptr = xcalloc (VARRAY_HDR_SIZE + data_size, 1);
+ ptr = XCNEWVAR (struct varray_head_tag, VARRAY_HDR_SIZE + data_size);
ptr->num_elements = num_elements;
ptr->elements_used = 0;
if (element[va->type].uses_ggc)
- va = ggc_realloc (va, VARRAY_HDR_SIZE + data_size);
+ va = GGC_RESIZEVAR (struct varray_head_tag, va,
+ VARRAY_HDR_SIZE + data_size);
else
- va = xrealloc (va, VARRAY_HDR_SIZE + data_size);
+ va = XRESIZEVAR (struct varray_head_tag, va,
+ VARRAY_HDR_SIZE + data_size);
va->num_elements = n;
if (n > old_elements)
memset (&va->data.vdt_c[old_data_size], 0, data_size - old_data_size);