
My previous patch fixed the arglist code, but the function that returns macro indention was still broken. (In more ways than one, actually--it didn't treat &body and &rest equivalently. That problem turned out to be the actual problem with the indentation macro that led me on this adventure in the first place. Go figure.) This patch fixes that quite nicely, I believe. Chris Capel *** /home/chris/lisp-libs/slime/swank.lisp.temp 2004-11-24 04:58:59.724472328 -0600 --- /home/chris/lisp-libs/slime/swank.lisp 2004-11-24 05:01:38.509333360 -0600 *************** *** 3405,3411 **** (defun macro-indentation (arglist) (if (well-formed-list-p arglist) ! (position '&body (remove '&whole arglist)) nil)) (defun well-formed-list-p (list) --- 3405,3415 ---- (defun macro-indentation (arglist) (if (well-formed-list-p arglist) ! (let ((indent-list (remove-whole-from-arglist ! (remove-aux-from-arglist ! arglist)))) ! (or (position '&body indent-list) ! (position '&rest indent-list))) nil)) (defun well-formed-list-p (list)