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)))