Changeset 12587


Ignore:
Timestamp:
Aug 15, 2009, 7:27:48 PM (10 years ago)
Author:
gz
Message:

fix some logic errors in previous checkin

Location:
branches/working-0711/ccl
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0711/ccl/compiler/nx0.lisp

    r12585 r12587  
    20952095               (logbitp $lfbits-keys-bit bits)
    20962096               (not (logbitp $lfbits-aok-bit bits))
     2097               #-BOOTSTRAPPED (fboundp 'def-info-method.keyvect)
    20972098               (loop for m in (def-info.methods info)
    2098                      thereis (nth-value 1 (def-info-method.keyvect m))))
     2099                     thereis (null (def-info-method.keyvect m))))
    20992100      ;; Some method has &aok, don't bother checking keywords.
    21002101      (setq bits (logior bits (ash 1 $lfbits-aok-bit))))
     
    21782179      (assert (eq (def-info.function-type definfo) 'defgeneric))
    21792180      (loop for m in (def-info.methods definfo)
    2180             thereis (multiple-value-bind (keyvect aok) (def-info-method.keyvect m)
    2181                       (or aok (find key keyvect)))))
     2181            as keyvect = (def-info-method.keyvect m)
     2182            thereis (or (null keyvect) (find key keyvect))))
    21822183    (let ((gf (find-unencapsulated-definition def)))
    21832184      (or (find key (%defgeneric-keys gf))
  • branches/working-0711/ccl/level-1/l1-readloop.lisp

    r12585 r12587  
    456456(defun %cons-def-info-method (lfbits keyvect qualifiers specializers)
    457457  (cons (cons (and keyvect
    458                    (if (and (logbitp $lfbits-aok-bit lfbits)
    459                             (logbitp $lfbits-rest-bit lfbits))
    460                        (list keyvect)
    461                        keyvect))
     458                   (if (logbitp $lfbits-aok-bit lfbits)
     459                     (and (not (logbitp $lfbits-rest-bit lfbits))
     460                          (list keyvect))
     461                     keyvect))
    462462              *loading-file-source-file*)
    463463        (cons qualifiers specializers)))
     
    557557      (return-from combine-gf-def-infos new-info))
    558558    (unless (congruent-lfbits-p old-bits new-bits)
    559       ;; Too bad don't have the actual lambda lists recorded.
    560559      (if (logbitp $lfbits-gfn-bit new-bits)
    561560        ;; A defgeneric, incongruent with previously defined methods
Note: See TracChangeset for help on using the changeset viewer.