After looking at, literally, about 4,000 uses of `push' in our sources, I've found 34 that rely on its return code. (I'm not claiming these are all there is, just the ones I detected in what was, at most, a mechanical and, frankly, quite tedious task, though hopefully not a sisyphean one.) That's about a 0.08% of misuse. Don't know if that's an argument for, or against, documenting push's return value. But, assuming we're not going to document it, the following patch (with appropriate ChangeLog entries, to be written) should be committed. Changes are mostly mechanical, though in a few cases I've changed slightly the code to better reflect the author's intention. For example, there's one case where the FUNCTION arg of a mapcar was just a call to push, but in fact, the whole return value of that mapcar wasn't used; so I've changed the mapcar to mapc. What I mean is that this isn't, per se, a destabilizing change, but there are some subtleties. Eli, do I install it right now, or do you prefer to wait after the 27 branch is cut?