diff --git a/code/hash-new.lisp b/code/hash-new.lisp index 6c66b6c96946da14f23cf78154db401ff416df4b..b4a0c463bb59fce129dc158132ac3e21deb8df71 100644 --- a/code/hash-new.lisp +++ b/code/hash-new.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/hash-new.lisp,v 1.19 2002/11/21 21:24:13 pmai Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/hash-new.lisp,v 1.20 2002/11/28 00:51:34 pmai Exp $") ;;; ;;; ********************************************************************** ;;; @@ -914,6 +914,7 @@ (internal-sxhash (class-name (layout-class (%instance-layout s-expr))) depth) (sxhash-instance s-expr))) + (funcallable-instance (sxhash-instance s-expr)) ;; Other-pointer types. (simple-string (sxhash-simple-string s-expr)) (symbol (sxhash-simple-string (symbol-name s-expr))) diff --git a/code/hash.lisp b/code/hash.lisp index 729f8c2674bbdf179bc8dfa0e32013df5472a19c..cfdd6d732374e8408841a7530d0b37a2b18bbc9a 100644 --- a/code/hash.lisp +++ b/code/hash.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/hash.lisp,v 1.40 2002/11/21 21:24:14 pmai Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/hash.lisp,v 1.41 2002/11/28 00:51:34 pmai Exp $") ;;; ;;; ********************************************************************** ;;; @@ -875,6 +875,7 @@ (internal-sxhash (class-name (layout-class (%instance-layout s-expr))) depth) (sxhash-instance s-expr))) + (funcallable-instance (sxhash-instance s-expr)) ;; Other-pointer types. (simple-string (sxhash-simple-string s-expr)) (symbol (sxhash-simple-string (symbol-name s-expr))) diff --git a/pcl/fin.lisp b/pcl/fin.lisp index b4b03d3f33167c1ed7255ca7c811b21c224a2f59..257338f480426bed7cde3735f42d53e6059c4b24 100644 --- a/pcl/fin.lisp +++ b/pcl/fin.lisp @@ -26,7 +26,7 @@ ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/fin.lisp,v 1.18 2002/11/22 15:20:18 pmai Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/fin.lisp,v 1.19 2002/11/28 00:51:35 pmai Exp $") ;;; ;; @@ -170,6 +170,11 @@ explicitly marked saying who wrote it. ;;; Implement proper sxhashing of standard instances. (defun common-lisp::sxhash-instance (instance) (cond - ((std-instance-p instance) (std-instance-hash-code instance)) - ((fsc-instance-p instance) (fsc-instance-hash-code instance)) - (t (error "What kind of instance is this?")))) + ((and (std-instance-p instance) + (typep (std-instance-wrapper instance) 'wrapper)) + (std-instance-hash-code instance)) + ((and (fsc-instance-p instance) + (typep (fsc-instance-wrapper instance) 'wrapper)) + (fsc-instance-hash-code instance)) + (t + 42)))