af3c78886f
glibc-based interface. Unfortunately, the glibc maintainers, despite knowing the existence of the FreeBSD qsort_r(3) interface in 2004 and refused to add the same interface to glibc based on grounds of the lack of standardization and portability concerns, has decided it was a good idea to introduce their own qsort_r(3) interface in 2007 as a GNU extension with a slightly different and incompatible interface. With the adoption of their interface as POSIX standard, let's switch to the same prototype, there is no need to remain incompatible. C++ and C applications written for the historical FreeBSD interface get source level compatibility when building in C++ mode, or when building with a C compiler with C11 generics support, provided that the caller passes a fifth parameter of qsort_r() that exactly matches the historical FreeBSD comparator function pointer type and does not redefine the historical qsort_r(3) prototype in their source code. Symbol versioning is used to keep old binaries working. MFC: never Relnotes: yes Reviewed by: cem, imp, hps, pauamma Differential revision: https://reviews.freebsd.org/D17083 |
||
---|---|---|
.. | ||
ttm | ||
drm_agpsupport.c | ||
drm_atomic.h | ||
drm_auth.c | ||
drm_buffer.c | ||
drm_buffer.h | ||
drm_bufs.c | ||
drm_context.c | ||
drm_core.h | ||
drm_crtc_helper.c | ||
drm_crtc_helper.h | ||
drm_crtc.c | ||
drm_crtc.h | ||
drm_dma.c | ||
drm_dp_helper.c | ||
drm_dp_helper.h | ||
drm_dp_iic_helper.c | ||
drm_drv.c | ||
drm_edid_modes.h | ||
drm_edid.c | ||
drm_edid.h | ||
drm_fb_helper.c | ||
drm_fb_helper.h | ||
drm_fixed.h | ||
drm_fops.c | ||
drm_fourcc.h | ||
drm_gem_names.c | ||
drm_gem_names.h | ||
drm_gem.c | ||
drm_global.c | ||
drm_global.h | ||
drm_hashtab.c | ||
drm_hashtab.h | ||
drm_ioc32.c | ||
drm_ioctl.c | ||
drm_irq.c | ||
drm_linux_list_sort.c | ||
drm_linux_list.h | ||
drm_lock.c | ||
drm_mem_util.h | ||
drm_memory.c | ||
drm_mm.c | ||
drm_mm.h | ||
drm_mode.h | ||
drm_modes.c | ||
drm_os_freebsd.c | ||
drm_os_freebsd.h | ||
drm_pci.c | ||
drm_pciids.h | ||
drm_platform.c | ||
drm_sarea.h | ||
drm_scatter.c | ||
drm_stub.c | ||
drm_sysctl.c | ||
drm_vm.c | ||
drm.h | ||
drmP.h |