Changeset 11400


Ignore:
Timestamp:
Nov 18, 2008, 9:01:55 PM (11 years ago)
Author:
gz
Message:

Don't do make-instance optimization if there are any specialized initialize-instance methods

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0711/ccl/level-1/l1-clos.lisp

    r11365 r11400  
    21642164;;; Return a list of :after methods for INITIALIZE-INSTANCE on the
    21652165;;; class's prototype, and a boolean that's true if no other qualified
    2166 ;;; methods are defined.
     2166;;; methods are defined and at most one primary one.
    21672167(defun initialize-instance-after-methods (proto class)
    21682168  (let* ((method-list (compute-method-list (sort-methods
     
    21712171    (if (atom method-list)
    21722172      (values nil t)
    2173       (if (null (car method-list))
     2173      (if (and (null (car method-list))
     2174               (null (cdddr method-list)))
    21742175        (values (cadr method-list) t)
    2175         ;; :around or :before methods, give up
     2176        ;; :around or :before methods, or more than one primary method, give up
    21762177        (values nil nil)))))
    21772178
Note: See TracChangeset for help on using the changeset viewer.