Changeset 5674


Ignore:
Timestamp:
Jan 2, 2007, 8:57:53 AM (18 years ago)
Author:
Gary Byers
Message:

Keep fixing CTYPECASE.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ccl/lib/macros.lisp

    r5604 r5674  
    870870        (if (eq construct 'etypecase)
    871871            (push `(t (values (%err-disp #.$XWRONGTYPE ,key-var ',types))) body)
    872             (push `(t (setf ,key-var (ensure-value-of-type  ,key-var ',types ',keyform))
     872            (push `(t (setf ,keyform (ensure-value-of-type  ,key-var ',types ',keyform))
    873873                      (go ,e-c-p)) body))))
    874874    `(cond ,@(nreverse body))))
     
    892892       ,(typecase-aux key-var clauses 'etypecase))))
    893893
    894 (defmacro ctypecase (keyform &body clauses)
    895   "CTYPECASE Keyform {(Type Form*)}*
     894(defmacro ctypecase (keyplace &body clauses)
     895  "CTYPECASE Key {(Type Form*)}*
    896896  Evaluates the Forms in the first clause for which TYPEP of Keyform and Type
    897897  is true. If no form is satisfied then a correctable error is signalled."
     
    899899        (tag (gensym)))
    900900    `(prog (,key-var)
    901        (setq ,key-var ,keyform)
    902901       ,tag
    903        (return ,(typecase-aux key-var clauses tag keyform)))))
     902       (setq ,key-var ,keyplace)
     903       (return ,(typecase-aux key-var clauses tag keyplace)))))
    904904
    905905(defmacro destructuring-bind (lambda-list expression &body body)
Note: See TracChangeset for help on using the changeset viewer.