Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 3 Aug 2014 20:54:15 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        Pedro Giffuni <pfg@freebsd.org>
Cc:        svn-src-head@freebsd.org, Bruce Simpson <bms@fastmail.net>, src-committers@freebsd.org, svn-src-all@freebsd.org
Subject:   Re: svn commit: r268943 - in head: include lib/libc/stdlib
Message-ID:  <A0B37C93-4E00-48BB-BEEB-D6A6B6F5B9E4@bsdimp.com>
In-Reply-To: <6A2B0200-EB23-459B-8E3F-6B1151C90D0E@freebsd.org>
References:  <201407211522.s6LFMnQo084633@svn.freebsd.org> <53CD430F.5040604@fastmail.net> <68E8EDB9-64DE-4037-9047-C8BEAD86801A@freebsd.org> <65378493-7F05-4314-9809-E689891F6067@gmail.com> <6A2B0200-EB23-459B-8E3F-6B1151C90D0E@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--Apple-Mail=_89DBBDC5-E4C8-4CE1-9A39-D98AE8BE62ED
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=windows-1252


On Aug 3, 2014, at 9:39 AM, Pedro Giffuni <pfg@freebsd.org> wrote:

>=20
> Il giorno 03/ago/2014, alle ore 09:27, Warner Losh <imp@bsdimp.com> ha =
scritto:
>=20
>>=20
>> On Jul 21, 2014, at 12:51 PM, Pedro Giffuni <pfg@freebsd.org> wrote:
>>=20
>>>=20
>>> Il giorno 21/lug/2014, alle ore 11:42, Bruce Simpson =
<bms@fastmail.net> ha scritto:
>>>=20
>>>> On 21/07/2014 16:22, Pedro F. Giffuni wrote:
>>>>> ]
>>>>> Log:
>>>>>  Add re-entrant versions of the hash functions based on the GNU =
api.
>>>>>=20
>>>> What, if anything, can be done about qsort_r() API incompatibility?
>>>=20
>>> qsort_r is non-standard and we did it first, plus we will want to =
stay compatible with Apple :).
>>>=20
>>> I guess we could do some ugly parameter swapping in the case where =
_GNU_SOURCE
>>> is defined, but I won=92t volunteer to do that.
>>=20
>> Are there any ABI considerations for the change?
>>=20
>=20
> I would keep the qsort_r() ABI unchanged and add a GNU-compatible =
version that is used only when _GNU_SOURCE (but not _BSD_SOURCE) is =
defined.
>=20
> This would already be pretty messy by itself because some portable =
code may define _GNU_SOURCE but still may try to use the Apple/BSD =
interface under another #ifdef. Perhaps it=92s just better to leave our =
headers alone and let the end-users do the wrapping.

If there=92s no ABI change, then I don=92t care what we do about a =
non-standard API. However, once we=92ve made an API public, standard or =
do, we have to support that ABI essentially forever when libc is =
involved.

Warner

--Apple-Mail=_89DBBDC5-E4C8-4CE1-9A39-D98AE8BE62ED
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=signature.asc
Content-Type: application/pgp-signature;
	name=signature.asc
Content-Description: Message signed with OpenPGP using GPGMail

-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org

iQIcBAEBCgAGBQJT3vXXAAoJEGwc0Sh9sBEAFWEP/3K8hwDJ+65zbTP+hz5C/qD0
FsSKOAZvocc29uzsRvq31uKw91+KMPRTBzwXmsBkdT7Z32XZ5YlpF5IA3DOXXfUf
E3dbqd+lqXzvIqUZmWUvPaBWqhd5Jxb2un4qt5ZZDaYTTbttGPPYLuIyevn/vbk7
0Y8f18z8dO6jLbvGdjg11uDrKojYaQQXIqsK6XIKmVHX5lcJDNx0htrZ4QAo2hUc
H3JM5Q7G3sJucN01OJrQZzlC/RC2RDh5ZQP2HbYvFWBxkFRWz0cD8XOIPjE9zS16
s448xczGUFJIKWdcN3pUFyIx3mXhbHp4bhBg0rr4VG8QWlwqTUBsOTA4RLALLB81
PjQhxHwFkeTyNXI6KuO8WOyCtsuai71JqrTTYivSXfPrKl3RwfqRewBw03qk4bmN
AoZFrwMPtRF9ef8ropxo+BWamcfWd7QaBiJvJe31CgtKSX0YVTfg2nmDOgtnzaq1
lkv8Ctr/UhcDqeI7aPdBCRelasT75vNQkJ7Grx1iQ/rDpiudm/F870Qo4cXrVL2/
wQ/xvGjCWsU5+xMVG/IQVpSSsDvH24o5LEpU26nV7BEukKAGqGIa2eWsY/K5vvGt
NGQ8qQsrAuyqX8rD7JxjM0SNHXWbZWI2S7EHQ/IVeFiHvg9JQ2PWYC+WmPV/v9BI
+JRPvYfJPUym3QVXcxrr
=CNMc
-----END PGP SIGNATURE-----

--Apple-Mail=_89DBBDC5-E4C8-4CE1-9A39-D98AE8BE62ED--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?A0B37C93-4E00-48BB-BEEB-D6A6B6F5B9E4>