{
assert (array != NULL);
assert (count <= INT_MAX);
- assert (aux != NULL);
+ assert (compare != NULL);
if (count != 0)
{
int low = 0;
int high = count - 1;
- while (low < high)
+ while (low <= high)
{
int middle = (low + high) / 2;
const unsigned char *element = first + middle * size;