Hi, Stonewall Ballard wrote:
In Lispworks 4.3 on Mac OS X, Iterate 1.0.9, I get a warning: Unknown special form MULTIPLE-VALUE-BIND-CALL. The lisp environment claims that MULTIPLE-VALUE-BIND-CALL is a special operator, but ITERATE doesn't know how to handle it. when I put a multiple-value-setq inside an iterate like this:
The loop expands to: (MULTIPLE-VALUE-CALL #'(LAMBDA (&OPTIONAL
A) I can't find m-v-BIND-call in the expansion. Is there a typo? B) Could you please try out the following: (defun special-form? (symbol) (or (assoc symbol *special-form-alist*))) and change (defun walk (form) ... to ((special-form? (car form)) ; handle known special operators first (walk-special-form form)) ((macro-function (car form) *env*) (walk (macroexpand form *env*))) ((special-operator-p (car form)) (clause-warning "Unknown special form ~A -- won't be walked by Iterate" form) (list form)) ... starts-clause? What do you get? Regards, Joerg Hoehle