Skip to content
Snippets Groups Projects
Commit 286c8a6b authored by dtc's avatar dtc
Browse files

The equalp-hash algorithms for vectors and arrays differs because the

fill-pointer must be respected for vectors but was being ignored for
some vector types.
parent 346b1533
No related branches found
No related tags found
No related merge requests found
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain. ;;; Carnegie Mellon University, and has been placed in the public domain.
;;; ;;;
(ext:file-comment (ext:file-comment
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/hash-new.lisp,v 1.11 2000/01/15 15:10:33 dtc Exp $") "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/hash-new.lisp,v 1.12 2000/01/16 20:10:39 dtc Exp $")
;;; ;;;
;;; ********************************************************************** ;;; **********************************************************************
;;; ;;;
...@@ -1050,8 +1050,11 @@ ...@@ -1050,8 +1050,11 @@
(internal-equalp-hash (realpart s-expr) 0) (internal-equalp-hash (realpart s-expr) 0)
(logxor (internal-equalp-hash (realpart s-expr) 0) (logxor (internal-equalp-hash (realpart s-expr) 0)
(internal-equalp-hash (realpart s-expr) 0)))))) (internal-equalp-hash (realpart s-expr) 0))))))
(simple-vector (vector-equalp-hash (truly-the simple-vector s-expr) depth)) (array
(array (array-equalp-hash s-expr depth)) (typecase s-expr
(simple-vector (vector-equalp-hash (truly-the simple-vector s-expr) depth))
(vector (vector-equalp-hash s-expr depth))
(t (array-equalp-hash s-expr depth))))
;; Everything else. ;; Everything else.
(t 42))) (t 42)))
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain. ;;; Carnegie Mellon University, and has been placed in the public domain.
;;; ;;;
(ext:file-comment (ext:file-comment
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/hash.lisp,v 1.35 2000/01/15 15:10:33 dtc Exp $") "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/hash.lisp,v 1.36 2000/01/16 20:10:39 dtc Exp $")
;;; ;;;
;;; ********************************************************************** ;;; **********************************************************************
;;; ;;;
...@@ -1019,8 +1019,11 @@ ...@@ -1019,8 +1019,11 @@
(internal-equalp-hash (realpart s-expr) 0) (internal-equalp-hash (realpart s-expr) 0)
(logxor (internal-equalp-hash (realpart s-expr) 0) (logxor (internal-equalp-hash (realpart s-expr) 0)
(internal-equalp-hash (realpart s-expr) 0)))))) (internal-equalp-hash (realpart s-expr) 0))))))
(simple-vector (vector-equalp-hash (truly-the simple-vector s-expr) depth)) (array
(array (array-equalp-hash s-expr depth)) (typecase s-expr
(simple-vector (vector-equalp-hash (truly-the simple-vector s-expr) depth))
(vector (vector-equalp-hash s-expr depth))
(t (array-equalp-hash s-expr depth))))
;; Everything else. ;; Everything else.
(t 42))) (t 42)))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment