svn commit: r268943 - in head: include lib/libc/stdlib

Bruce Simpson bms at fastmail.net
Sun Aug 3 15:06:52 UTC 2014


On 03/08/2014 15:27, Warner Losh wrote:
>>> What, if anything, can be done about qsort_r() API incompatibility?
>> qsort_r is non-standard and we did it first, plus we will want to stay compatible with Apple :).
>>
>> I guess we could do some ugly parameter swapping in the case where _GNU_SOURCE
>> is defined, but I won’t volunteer to do that.
> Are there any ABI considerations for the change?
>
I'm in agreement with Pedro here. Some form of compile-time checking is 
the best one can hope for in that situation, as it would be difficult to 
"ret-con" the qsort_r() ABI itself. The glibc implementation swaps two 
pointers in its signature. One of those points to executable code.

The last time this caused problems for me was when testing the new 
CScope indexing backend by Elad Lahav on BSD/Mac. He had developed on 
Linux, however the quick fix was to fall back to using non-reentrant 
qsort().



More information about the svn-src-all mailing list