Helmut Eller replied:
Hmm.. are you sure the indentation here wasn't manually tuned or written with some other indentation package?
With Emacs 21.3 (non-CVS version) I get the same "bad" indentation as with the CVS version and my custom settings.
Again, you are correct:
I am loading a file called loop-indent.el that does:
(put 'loop 'common-lisp-indent-function 'cl-indent-indent-loop-macro )
The problem is that slime/cl-indent.el has the following change to COMMON-LISP-INDENT-FUNCTION that prevents the common-lisp-indent-function of loop from even being considered.
(defun common-lisp-indent-function (indent-point state) (if (save-excursion (goto-char (elt state 1)) (looking-at "([Ll][Oo][Oo][Pp]")) (common-lisp-loop-part-indentation indent-point state) (common-lisp-indent-function-1 indent-point state)))
Thus, common-lisp-loop-part-indentation gets called instead of (get 'loop 'common-lisp-indent-function)
I managed a workaround, but it might be better to fold loop-indent.el into SLIME.