Changeset 12443


Ignore:
Timestamp:
02/10/10 22:56:56 (13 years ago)
Author:
ehuelsmann
Message:

Revert r12425: it broke trunk in a way not quickly fixed.

Work to reinstate 12425 continues on branches/metaclass/.

File:
1 edited

Legend:

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

    r12432 r12443  
    538538  (getf canonical-slot :name))
    539539
    540 (defun ensure-class (name &rest all-keys
    541                      &key (metaclass 'standard-class) &allow-other-keys)
    542 
    543   ;; Don't pass METACLASS on to the initialization routines
    544   ;; This only works because we *know* ABCL conses up new &rest lists
    545   ;; every time; otherwise, modifying the argument list is discouraged by the spec
    546   (remf all-keys :metaclass)
    547 
     540(defun ensure-class (name &rest all-keys &allow-other-keys)
    548541  ;; Check for duplicate slots.
    549542  (let ((slots (getf all-keys :direct-slots)))
     
    590583                  old-class)))
    591584          (t
    592            (let ((class (apply (if (eq metaclass 'standard-class)
    593                                    #'make-instance-standard-class
    594                                    #'make-instance)
    595                                (or (when (symbolp metaclass)
    596                                      (find-class metaclass))
    597                                    metaclass)
     585           (let ((class (apply #'make-instance-standard-class
     586                               (find-class 'standard-class)
    598587                               :name name all-keys)))
    599588             (%set-find-class name class)
Note: See TracChangeset for help on using the changeset viewer.