Changeset 902
- Timestamp:
- Feb 15, 2005, 11:17:38 PM (20 years ago)
- File:
-
- 1 edited
-
trunk/ccl/lib/setf.lisp (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ccl/lib/setf.lisp
r6 r902 218 218 ',(%car rest) 219 219 ,@(%cdr rest))) 220 (destructuring-bind (lambda-list (store-var &rest mv-store-vars) &body body) rest 220 (destructuring-bind (lambda-list (store-var &rest mv-store-vars) &body body) 221 rest 221 222 (unless (verify-lambda-list lambda-list) 222 223 (signal-program-error $XBadLambdaList lambda-list)) … … 226 227 (multiple-value-bind (body decls doc) 227 228 (parse-body body env t) 229 (setq body `((block ,access-fn ,@body))) 228 230 (let* ((args (gensym)) 229 231 (dummies (gensym)) … … 232 234 (access-form (gensym)) 233 235 (environment (gensym))) 234 235 236 `(eval-when (:compile-toplevel :load-toplevel :execute) 236 237 (store-setf-method … … 252 253 (cdr ,access-form) 253 254 ,newval-vars 254 `((lambda ,,lambda-list 255 (block ,',access-fn ,,@body)) 255 `((lambda ,,lambda-list ,,@body) 256 256 ,@,dummies) 257 257 ,new-access-form)))))) 258 ,@(if doc (list doc)))))))))) 258 ,@(if doc (list doc)) 259 ',access-fn)))))))) 259 260 260 261 (defmacro define-modify-macro (name lambda-list function &optional doc-string)
Note:
See TracChangeset
for help on using the changeset viewer.
