0.7.9.36:
[sbcl.git] / src / code / target-sxhash.lisp
index 347fc5c..5e7b3d9 100644 (file)
                    (logxor 422371266
                            (sxhash ; through DEFTRANSFORM
                             (class-name (layout-class (%instance-layout x)))))
-                   ;; Nice though it might be to return a nontrivial
-                   ;; hash value for other instances (especially
-                   ;; STANDARD-OBJECTs) there seems to be no good way
-                   ;; to do so. We can't even do the CLASS-NAME trick
-                   ;; (as used above for STRUCTURE-OBJECT) because
-                   ;; then CHANGE-CLASS would cause SXHASH values to
-                   ;; change, ouch! -- WHN recording wisdom of CSR
-                   309518995))
+                   (sxhash-instance x)))
               (symbol (sxhash x)) ; through DEFTRANSFORM
               (array
                (typecase x
                        (sxhash (char-code x)))) ; through DEFTRANSFORM
               ;; general, inefficient case of NUMBER
               (number (sxhash-number x))
+              (generic-function (sxhash-instance x))
               (t 42))))
     (sxhash-recurse x)))
 \f