1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-17 09:10:22 +02:00

SCM_DEBUG fix: Don't apply SCM_CAR to non-pairs when walking argument

lists in method cache matching.

* libguile/goops.c (scm_mcache_lookup_cmethod): Don't apply SCM_CAR to
  non-pairs when walking argument lists in method cache matching.
  Don't check for CLASSP or symbol in the car slot, since the end of
  the specifier list is a non-pair.  Update comments to reflect new
  structure of method cache entry.
* module/oops/goops/dispatch.scm: Update comments here too.
This commit is contained in:
Ken Raeburn 2009-11-15 23:43:17 -05:00
parent d02f313714
commit 222831b443
2 changed files with 9 additions and 13 deletions

View file

@ -53,9 +53,9 @@
;;; Method cache
;;;
;; (#@dispatch args N-SPECIALIZED #((TYPE1 ... ENV FORMALS FORM1 ...) ...) GF)
;; (#@dispatch args N-SPECIALIZED #((TYPE1 ... . CMETHOD) ...) GF)
;; (#@dispatch args N-SPECIALIZED HASHSET MASK
;; #((TYPE1 ... ENV FORMALS FORM1 ...) ...)
;; #((TYPE1 ... . CMETHOD) ...)
;; GF)
;;; Representation