X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Ftarget-hash-table.lisp;h=844729c3a935a235a18b1ffd1e742e206dd8901d;hb=2abf77f6c4c559a3e5b7fc351a4743305381feb6;hp=dea5d2c50ed66fa91924deafc0a21faeb5df90e8;hpb=95a6db7329b91dd90d165dd4057b9b5098d34aa2;p=sbcl.git diff --git a/src/code/target-hash-table.lisp b/src/code/target-hash-table.lisp index dea5d2c..844729c 100644 --- a/src/code/target-hash-table.lisp +++ b/src/code/target-hash-table.lisp @@ -14,11 +14,17 @@ ;;;; utilities -(defconstant max-hash most-positive-fixnum) +(eval-when (:compile-toplevel :load-toplevel :execute) + (defconstant max-hash most-positive-fixnum)) (deftype hash () `(integer 0 ,max-hash)) +;;; FIXME: Does this always make a nonnegative FIXNUM? If so, then +;;; explain why. If not (or if the reason it always makes a +;;; nonnegative FIXNUM is only the accident that pointers in supported +;;; architectures happen to be in the lower half of the address +;;; space), then fix it. #!-sb-fluid (declaim (inline pointer-hash)) (defun pointer-hash (key) (declare (values hash))