* Alejandro Colomar:

> Here's a new revision of the proposal.  I've removed ENOMEM, since it's
> not strictly necessary; it's only necessary that those systems that
> already set it continue setting it (and my proposal for POSIX will
> certainly include ENOMEM).

As far as I can see, this changes specification across all allocation
functions and requires them to be able to produce zero-sized objects.
Previously, the discussion was about changing realloc only.

Is this really the right direction, given that

  int a[n];

is still undefined, and that C does not support zero-sized objects in
general?

Wouldn't it be more consistent to move in the other direction, and
require that allocations of zero size fail because C does not support
zero-sized objects?

(This is why I don't want to make any changes today—we just don't know
what the tightened specification will look like in the published
standard.  There are just too many totally reasonable variations.)

Thanks,
Florian


Reply via email to