enum.c:260
static int
sort_by_cmp(a, b)
    VALUE *a, *b;
{
    VALUE retval;

    retval = rb_funcall(RARRAY(*a)->ptr[0], id_cmp, 1, RARRAY(*b)->ptr[0]);
    return rb_cmpint(retval, *a, *b);
}
