X-Git-Url: http://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Fasort%2Fasort.h;h=43b0f89c3c6b8e3bd28686c2cf909b5515a908f0;hb=5e37a0febfb89a2535f2eb9f0ea06a5546a39234;hp=b7178c5b1d50c1d8f08f8c63ebe8953b042fd42c;hpb=b0fa019adb998c20a8740f5696b61ae87d2a77a6;p=ccan diff --git a/ccan/asort/asort.h b/ccan/asort/asort.h index b7178c5b..43b0f89c 100644 --- a/ccan/asort/asort.h +++ b/ccan/asort/asort.h @@ -1,7 +1,8 @@ +/* Licensed under LGPLv2.1+ - see LICENSE file for details */ #ifndef CCAN_ASORT_H #define CCAN_ASORT_H #include "config.h" -#include +#include #include /** @@ -19,19 +20,13 @@ */ #define asort(base, num, cmp, ctx) \ _asort((base), (num), sizeof(*(base)), \ - typesafe_cb_cast(int (*)(const void *, const void *, void *), \ - int (*)(const __typeof__(*(base)) *, \ - const __typeof__(*(base)) *, \ - __typeof__(ctx)), \ - (cmp)), \ - (ctx)) + total_order_cast((cmp), *(base), (ctx)), (ctx)) #if HAVE_QSORT_R_PRIVATE_LAST #define _asort(b, n, s, cmp, ctx) qsort_r(b, n, s, cmp, ctx) #else void _asort(void *base, size_t nmemb, size_t size, - int(*compar)(const void *, const void *, void *), - void *ctx); + _total_order_cb compar, void *ctx); #endif #endif /* CCAN_ASORT_H */