svn commit: r236582 - head/lib/libc/stdlib

Konstantin Belousov kostikbel at gmail.com
Tue Jun 5 08:35:59 UTC 2012


On Tue, Jun 05, 2012 at 10:08:09AM +0200, Dimitry Andric wrote:
> On 2012-06-04 23:34, Andrey A. Chernov wrote:> Author: ache
> > Date: Mon Jun  4 21:34:49 2012
> > New Revision: 236582
> > URL: http://svn.freebsd.org/changeset/base/236582
> > 
> > Log:
> >   1) IEEE Std 1003.1-2008, "errno" section, is explicit that
> >   
> >   "The setting of errno after a successful call to a function is
> >   unspecified unless the description of that function specifies that
> >   errno shall not be modified."
> >   
> >   However, free() in IEEE Std 1003.1-2008 does not mention its interaction
> >   with errno, so MAY modify it after successful call
> >   (it depends on particular free() implementation, OS-specific, etc.).
> 
> Actually, it says the following:
> 
>   RETURN VALUE
> 
>       The free() function shall not return a value.
> 
>   ERRORS
> 
>       No errors are defined.
> 
> How much clearer do you want it? ;)
Not to mention that the patch was committed to _our_ implementation of
libc, which uses _our_ free, and not some abstract free(3). Our free changing
errno means that process state is so messed that worrying about realpath(3)
correctness is beyond any expectations.

I already described my POV to ache, but it seems that nobody listens. It just
a season, it seems.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/svn-src-all/attachments/20120605/26e21278/attachment.pgp


More information about the svn-src-all mailing list