malc wrote:
> On Mon, 28 Dec 2009, Jamie Lokier wrote:
> 
> > Aurelien Jarno wrote:
> > > This fixes the loading of a stripped kernel with zero malloc disabled.
> > 
> > *Raises an eyebrow*
> > 
> > Even though there's different perspectives over whether qemu_malloc(0)
> > should be allowed, inherited from ambiguity over malloc(0),
> > realloc(p,0) has always had a standard, well-defined meaning.
> 
> No.
> http://groups.google.com/group/comp.std.c/browse_thread/thread/4e9af8847613d71f/6f75ad22e0768a0b?q=realloc++group:comp.std.c#6f75ad22e0768a0b

Wow, thanks for that.  It's a real surprise.  Looks like C99's own
rationale is not consistent with itself on the subject, and differs
from C90 where the "standard, well-defined meaning" I referred to was
defined.

See also http://c-faq.com/malloc/reallocnull.html which says "and the
related realloc(..., 0), which frees" and has references at the end.
See, it's not just me :-)

So thanks for setting me straight.  One thing we can all agree on now
is that it's best not to call malloc(0) or realloc(p,0) at all :-)

-- Jamie


Reply via email to