AW: [iterate-devel] Iterate error with multiple-value-setq
Hoehle, Joerg-Cyril
Joerg-Cyril.Hoehle at t-systems.com
Thu Nov 25 15:11:41 UTC 2004
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
More information about the iterate-devel
mailing list