Changeset 6206


Ignore:
Timestamp:
Apr 8, 2007, 4:37:44 AM (12 years ago)
Author:
gb
Message:

From Takehiko Abe: handle EQL specializers in %SOURCE-FILES-LIKE-EM.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ccl/lib/source-files.lisp

    r2639 r6206  
    137137
    138138(defun source-files-like-em (classes qualifiers method)
    139   (when (do ((cls classes (cdr cls))
    140              (xsps (%method-specializers method) (cdr xsps)))
    141             ((null cls) t)
    142           (let ((class (car cls))(xspec (car xsps)))
    143             (unless (if (listp xspec)
    144                       (and (listp class)
    145                            (or (not (constantp (cadr class)))
    146                                ; one is evaluated the other is not
    147                                (eql (cadr class)(cadr xspec))))
    148                       (eq class (class-name xspec)))
    149               (return nil))))
    150       (or (eq qualifiers t)
    151           (equal qualifiers (%method-qualifiers method)))))
     139  (and (equal (canonicalize-specializers classes)
     140              (%method-specializers method))
     141       (or (eq qualifiers t)
     142           (equal qualifiers (%method-qualifiers method)))))
    152143
    153144(defun parse-definition-spec (form)
Note: See TracChangeset for help on using the changeset viewer.