Within `while', `continue' takes zero arguments
authorMark H Weaver <mhw@netris.org>
Fri, 4 Mar 2011 18:44:02 +0000 (13:44 -0500)
committerMark H Weaver <mhw@netris.org>
Tue, 8 Mar 2011 23:18:36 +0000 (18:18 -0500)
* module/ice-9/boot-9.scm (while): Report an error if `continue' is
  passed one or more arguments.  Previously, it would report an error if
  `(continue arg rest ...)' was found within the `while', but not if
  `continue' was found bare and later applied to one or more arguments,
  e.g. `(apply continue (list arg rest ...))'.

module/ice-9/boot-9.scm

index 7ca0806..a0b207c 100644 (file)
@@ -2803,8 +2803,8 @@ module '(ice-9 q) '(make-q q-length))}."
                          ((_ . args)
                           (syntax-violation 'continue "too many arguments" x))
                          (_
-                          #'(lambda args 
-                              (apply abort-to-prompt continue-tag args))))))
+                          #'(lambda ()
+                              (abort-to-prompt continue-tag))))))
                    (do () ((not cond)) body ...))
                  (lambda (k) (lp)))))
             (lambda (k)