[slime-cvs] CVS slime/contrib

CVS User nsiivola nsiivola at common-lisp.net
Sun May 15 17:09:16 UTC 2011


Update of /project/slime/cvsroot/slime/contrib
In directory common-lisp.net:/tmp/cvs-serv1291/contrib

Modified Files:
	ChangeLog slime-cl-indent.el 
Log Message:
slime-indentation: fix handling of (... &rest not-a-cons) indentation specs

  Previously if the expression following &rest in a cl-indent indentation spec
  was not a cons, all but the first form of the tail got normal indentation
  instead of the specified one, causing eg. PROG to be indented wrong.

  As far as I can tell the first leg of the COND that this patch deletes was
  never correct.


--- /project/slime/cvsroot/slime/contrib/ChangeLog	2011/05/15 17:07:47	1.437
+++ /project/slime/cvsroot/slime/contrib/ChangeLog	2011/05/15 17:09:16	1.438
@@ -1,5 +1,11 @@
 2011-05-10  Nikodemus Siivola  <nikodemus at random-state.net>
 
+	* slime-cl-indent.el (lisp-indent-259): Don't throw to exit with
+	normal-indent if processing a tail that isn't a cons. Doing that
+	breaks (... &rest foo) specs.
+
+2011-05-10  Nikodemus Siivola  <nikodemus at random-state.net>
+
 	* slime-cl-indent.el (common-lisp-indent-function-1): Don't take
 	`default' for a tentative defun, unlike anything else starting
 	with `def'.
--- /project/slime/cvsroot/slime/contrib/slime-cl-indent.el	2011/05/15 17:07:47	1.3
+++ /project/slime/cvsroot/slime/contrib/slime-cl-indent.el	2011/05/15 17:09:16	1.4
@@ -515,10 +515,7 @@
                    (null (cdr method)))
               (lisp-indent-report-bad-format method))
 
-          (cond ((and tail (not (consp tem)))
-                 ;; indent tail of &rest in same way as first elt of rest
-                 (throw 'exit normal-indent))
-                ((eq tem '&body)
+          (cond ((eq tem '&body)
                  ;; &body means (&rest <lisp-body-indent>)
                  (throw 'exit
                    (if (and (= n 0)     ;first body form





More information about the slime-cvs mailing list