| 94 | #endif |
| 95 | |
| 96 | static inline char * |
| 97 | med3(char *a, char *b, char *c, cmp_t *cmp, void *thunk |
| 98 | #ifndef I_AM_QSORT_R |
| 99 | __unused |
| 100 | #endif |
| 101 | ) |
| 102 | { |
| 103 | return CMP(thunk, a, b) < 0 ? |
| 104 | (CMP(thunk, b, c) < 0 ? b : (CMP(thunk, a, c) < 0 ? c : a )) |
| 105 | :(CMP(thunk, b, c) > 0 ? b : (CMP(thunk, a, c) < 0 ? a : c )); |
| 106 | } |
| 107 | |
| 108 | #ifdef I_AM_QSORT_R |
| 109 | void |