Changeset 9172


Ignore:
Timestamp:
Apr 17, 2008, 11:39:48 AM (11 years ago)
Author:
mb
Message:

Make macroexpand-all deal with more special operators

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0711/ccl/level-1/l1-readloop.lisp

    r8936 r9172  
    308308                    `(locally ,@decls ,@body)
    309309                    `(progn ,@body)))))
    310               ((let let*)
     310              ((let let* compiler-let)
    311311               (destructuring-bind-body (bindings &body) (rest form)
    312312                `(,(first form)
     
    342342                                collect (macroexpand-all value env))))
    343343              ((go quote) form)
    344               ;; catch, if, load-time-value, multiple-value-call, multiple-value-prog1, progn,
    345               ;; progv, tagbody, throw and unwind-protect also fall in this case (all 'argument forms'
    346               ;; are evaluated)
    347               (t (cons (first form) (mexpand (rest form) env))))))))))
     344              ((fbind with-c-frame with-variable-c-frame ppc-lap-function)
     345               (error "Unable to macroexpand ~S." form))
     346              ((catch if load-time-value multiple-value-call multiple-value-prog1 progn
     347                progv tagbody throw unwind-protect)
     348               (cons (first form) (mexpand (rest form) env)))
     349              (t
     350               ;; need to check that (first form) is either fboundp or a local function...
     351               (cons (first form) (mexpand (rest form) env))))))))))
    348352
    349353(defun macroexpand-1 (form &optional env &aux fn)
Note: See TracChangeset for help on using the changeset viewer.