Many thanks to Attila and Fare for suggesting ways to rewrite my original patch. New version now available in the repo.
Note: has not been tested on old SBCL yet: I will do that later today when I get to the office.
Best, r