This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [top-level] C++-friendly allocators for libiberty


Ian Lance Taylor wrote:
> Bernardo Innocenti <bernie@develer.com> writes:
> 
> 
>>2004-06-26  Bernardo Innocenti  <bernie@develer.com>
>>
>>	* include/libiberty.h (xnew, xcnew, xnewvec, xcnewvec, xobnew): Move
>>	here from libcpp/internal.h.
>>	(xcrealloc, xdelete, xdeletevec): New macros.
>>
>>libcpp:
>>
>>2004-06-26  Bernardo Innocenti  <bernie@develer.com>
>>
>>	* internal.h (xnew, xcnew, xnewvec, xcnewvec, xobnew): Move these
>>	macros to include/libiberty.h.
> 
> 
> The libiberty part is fine except for xcrealloc.  That name clearly
> shouldn't have a 'c' in it.  Also, it doesn't seem to fit the general
> copying of C++ names.  In C++ there isn't realloc to correpond to new
> and delete.  Still, I suppose C needs realloc.  But we can't use
> xrealloc, because that is taken.  So how about xresize?

On second thought, the interface for xrenew() or xresize() wasn't
even usable without a size argument.

Maybe this would be better?

   #define xrenewvec(P, T, N)	(T *) xrealloc ((P), sizeof(T) * (N))

-- 
  // Bernardo Innocenti - Develer S.r.l., R&D dept.
\X/  http://www.develer.com/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]