Changeset 13978


Ignore:
Timestamp:
06/18/12 16:32:48 (9 years ago)
Author:
rschlatte
Message:

Don't defer compute-discriminating-function

File:
1 edited

Legend:

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

    r13977 r13978  
    15751575          gf))))
    15761576
    1577 (defun initial-discriminating-function (gf args)
    1578   (set-funcallable-instance-function
    1579    gf
    1580    (funcall (if (eq (class-of gf) +the-standard-generic-function-class+)
    1581                 #'std-compute-discriminating-function
    1582                 #'compute-discriminating-function)
    1583             gf))
    1584   (apply gf args))
    1585 
    15861577(defun collect-eql-specializer-objects (generic-function)
    15871578  (let ((result nil))
     
    16011592  (%init-eql-specializations gf (collect-eql-specializer-objects gf))
    16021593  (set-funcallable-instance-function
    1603    gf #'(lambda (&rest args)
    1604           (initial-discriminating-function gf args)))
     1594   gf
     1595   (if (eq (class-of gf) +the-standard-generic-function-class+)
     1596       (std-compute-discriminating-function gf)
     1597       (compute-discriminating-function gf)))
    16051598  ;; FIXME Do we need to warn on redefinition somewhere else?
    16061599  (let ((*warn-on-redefinition* nil))
Note: See TracChangeset for help on using the changeset viewer.