Changeset 14290


Ignore:
Timestamp:
12/04/12 16:59:59 (8 years ago)
Author:
Mark Evenson
Message:

abcl-1.1.x: Backport r14289.

Don't shortcut add-method for subclasses of standard-generic-function

  • Reported by Pascal Costanza
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/1.1.x/src/org/armedbear/lisp/clos.lisp

    r14262 r14290  
    17191719        ;; specified by CLHS, 7.7 (Macro DEFGENERIC).
    17201720        (dolist (method (generic-function-initial-methods gf))
    1721           (if (typep gf 'standard-generic-function)
     1721          (if (eq  (class-of gf) +the-standard-generic-function-class+)
    17221722              (progn
    17231723                (std-remove-method gf method)
     
    21262126               (apply #'make-instance-standard-method gf all-keys)
    21272127               (apply #'make-instance (generic-function-method-class gf) all-keys))))
    2128       (if (eq (generic-function-method-class gf) +the-standard-method-class+)
     2128      (if (and
     2129           (eq (generic-function-method-class gf) +the-standard-method-class+)
     2130           (eq (class-of gf) +the-standard-generic-function-class+))
    21292131          (progn
    21302132            (std-add-method gf method)
Note: See TracChangeset for help on using the changeset viewer.