Eric Abrahamsen writes: > Noam Postavsky writes: > >> Eric Abrahamsen writes: >> >>> For the interim, all that matters is consistency: >>> >>> (let ((list nil) >>> (ob (make-vector 3 0))) >>> (intern "foo" ob) >>> (intern "bar" ob) >>> (intern "xxx" ob) >>> (gnus-remove-if-not (lambda (_) t) ob)) ;=> (xxx 0 0) >> >> But: >> >> (let ((list nil) >> (ob (make-vector 3 0))) >> (intern "foo" ob) >> (intern "bar" ob) >> (intern "xxx" ob) >> (gnus-remove-if-not (lambda (_) t) >> ob t)) ;=> (xxx bar foo) > > Good catch! Thanks for that. I was too hasty, and had already moved on > to running the next patch. > > There are only two places in the code where that third argument is > passed. I can rework those two locations so that they work properly, > until the next step is taken. For a brief, amusing moment, I thought I could write a seq-filter method that specialized on obarrays, but unfortunately there's no specializer for obarrays. Oh well. Here's another version of the patch. It's not pretty, but I do hope it's temporary.