Changeset 13799


Ignore:
Timestamp:
01/25/12 08:53:50 (9 years ago)
Author:
rschlatte
Message:

Handle metaclasses given as symbols.

File:
1 edited

Legend:

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

    r13791 r13799  
    25732573  (setf all-keys (copy-list all-keys))  ; since we modify it
    25742574  (remf all-keys :metaclass)
     2575  (unless (classp metaclass) (setf metaclass (find-class metaclass)))
    25752576  (let ((class (apply (if (eq metaclass +the-standard-class+)
    25762577                          #'make-instance-standard-class
     
    25942595  (setf all-keys (copy-list all-keys))  ; since we modify it
    25952596  (remf all-keys :metaclass)
     2597  (unless (classp metaclass) (setf metaclass (find-class metaclass)))
    25962598  (change-class class metaclass)
    25972599  (apply #'reinitialize-instance class
     
    26092611  (setf all-keys (copy-list all-keys))  ; since we modify it
    26102612  (remf all-keys :metaclass)
     2613  (unless (classp metaclass) (setf metaclass (find-class metaclass)))
    26112614  (when (and metaclassp (not (eq (class-of class) metaclass)))
    26122615    (error 'program-error
Note: See TracChangeset for help on using the changeset viewer.