Changeset 12805


Ignore:
Timestamp:
07/13/10 19:16:25 (12 years ago)
Author:
astalla
Message:

Fixed bugs with custom slot and class options

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/src/org/armedbear/lisp/clos.lisp

    r12758 r12805  
    210210             (push-on-end `(setf ,(cadr olist)) writers))
    211211            (t
    212        (push-on-end (car olist) non-std-options)
     212       (push-on-end `(quote ,(car olist)) non-std-options)
    213213             (push-on-end (cadr olist) non-std-options))))
    214 ;     (error 'program-error
    215 ;                    "invalid initialization argument ~S for slot named ~S"
    216 ;                    (car olist) name))
    217214        `(list
    218215          :name ',name
     
    260257    ((:documentation :report)
    261258     (list (car option) `',(cadr option)))
    262     (t (list (car option) `(quote ,(cdr option))))))
    263 ;     (error 'program-error
    264 ;            :format-control "invalid DEFCLASS option ~S"
    265 ;            :format-arguments (list (car option))))))
     259    (t (list `(quote ,(car option)) `(quote ,(cdr option))))))
    266260
    267261(defun make-initfunction (initform)
     
    338332           (writers ())
    339333           (allocation :instance)
    340            (allocation-class nil)
    341            &allow-other-keys)
     334           (allocation-class nil))
    342335  (setf (slot-definition-name slot) name)
    343336  (setf (slot-definition-initargs slot) initargs)
     
    23402333  (declare (ignore name initargs initform initfunction readers writers allocation))
    23412334  ;;For built-in slots
    2342   (apply #'init-slot-definition slot args)
     2335  (apply #'init-slot-definition slot :allow-other-keys t args)
    23432336  ;;For user-defined slots
    23442337  (call-next-method))
Note: See TracChangeset for help on using the changeset viewer.