[armedbear-cvs] r13980 - trunk/abcl/src/org/armedbear/lisp
rschlatte at common-lisp.net
rschlatte at common-lisp.net
Tue Jun 19 15:01:37 UTC 2012
Author: rschlatte
Date: Tue Jun 19 08:01:37 2012
New Revision: 13980
Log:
Pass multiply-specified slot option as a list to direct-slot-definition-class.
Modified:
trunk/abcl/src/org/armedbear/lisp/clos.lisp
Modified: trunk/abcl/src/org/armedbear/lisp/clos.lisp
==============================================================================
--- trunk/abcl/src/org/armedbear/lisp/clos.lisp Tue Jun 19 06:52:22 2012 (r13979)
+++ trunk/abcl/src/org/armedbear/lisp/clos.lisp Tue Jun 19 08:01:37 2012 (r13980)
@@ -331,8 +331,7 @@
(push-on-end (cadr olist) readers)
(push-on-end `(setf ,(cadr olist)) writers))
(t
- (push-on-end `(quote ,(car olist)) non-std-options)
- (push-on-end `(quote ,(cadr olist)) non-std-options))))
+ (push-on-end (cadr olist) (getf non-std-options (car olist))))))
`(list
:name ',name
,@(when initfunction
@@ -352,7 +351,10 @@
,@(when type `(:type ',type))
,@(when documentation `(:documentation ',documentation))
, at other-options
- , at non-std-options))))
+ ,@(mapcar #'(lambda (opt) (if (or (atom opt) (/= 1 (length opt)))
+ `',opt
+ `',(car opt)))
+ non-std-options)))))
(defun maybe-note-name-defined (name)
(when (fboundp 'note-name-defined)
More information about the armedbear-cvs
mailing list