Changeset 9894


Ignore:
Timestamp:
Jul 3, 2008, 5:13:53 PM (13 years ago)
Author:
gz
Message:

Propagate r9390 to trunk

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/level-1/l1-clos.lisp

    r9891 r9894  
    154154(defmethod class-default-initargs ((class class)))
    155155(defmethod class-direct-default-initargs ((class class)))
     156
     157(defmethod compile-time-class-p ((class class)) nil)
    156158
    157159(defmethod direct-slot-definition-class ((class std-class) &key (allocation :instance) &allow-other-keys)
     
    572574                       (let* ((fwdref (scan-forward-refs s seen)))
    573575                         (when fwdref (return fwdref)))))))))
    574     (scan-forward-refs original ())))
     576    (or (compile-time-class-p original)
     577        (scan-forward-refs original ()))))
    575578
    576579(defun class-forward-referenced-superclasses (original)
     
    625628    (finalize-inheritance class)
    626629    (return-from update-class))
    627   (when (or finalizep
    628             (class-finalized-p class)
    629             (not (class-has-a-forward-referenced-superclass-p class)))
     630  (when (or finalizep (class-finalized-p class))
    630631    (let* ((cpl (update-cpl class (compute-class-precedence-list  class))))
    631632      ;; This -should- be made to work for structure classes
     
    11921193;;; For %compile-time-defclass
    11931194(defclass compile-time-class (class) ())
     1195
     1196(defmethod compile-time-class-p ((class compile-time-class))
     1197  t)
     1198
     1199(defmethod class-finalized-p ((class compile-time-class))
     1200  nil)
    11941201
    11951202
Note: See TracChangeset for help on using the changeset viewer.