>>>> "KY" == Katsumi Yamaoka
KY> (cond ((looking-at "\\s(\\|#\\s(") (while ... ...)) ((and ...
The condition in the while almost certainly contains a matching
operation, which must eventually fail, and so exit the while. This
failure now (as of 21.5.12) clears the registers, as has been
documented since forever.
My original impression was that this should be fixed by saving and
restoring the match data registers in the calling code. However, that
inefficient in the current implementation of `match-data'. Worse, it
doesn't work with idioms in which registers set in a recursive call
I will within a day or so revert my patch and change the documentation
to fit this common usage pattern. That should fix this bug and many
Institute of Policy and Planning Sciences http://turnbull.sk.tsukuba.ac.jp
University of Tsukuba Tennodai 1-1-1 Tsukuba 305-8573 JAPAN
Ask not how you can "do" free software business;
ask what your business can "do for" free software.