diff --git a/src/array.c b/src/array.c index fbf2c8baa96fba8286cc7afcf5c080591f7d1e7f..2affea7e85358ef846882a4c2590748c8277340f 100644 --- a/src/array.c +++ b/src/array.c @@ -1012,7 +1012,8 @@ static int obj_or_func_cmp (const struct svalue *a, const struct svalue *b) return a->subtype - b->subtype; /* Destructed objects are considered equal to each other, and - * (arbitrarily chosen) greater than others. */ + * greater than others. That makes them sort close to real zeroes, + * which are sorted after objects without compare functions. */ if (!a->u.object->prog) return !b->u.object->prog ? 0 : 1; else if (!b->u.object->prog)