Update of /cvsroot/sbcl/sbcl
In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv8159
22.214.171.124: fix host constant leaks
Various ways in which a host constant can leak through the
cross-compiler into the target are plugged.
5 commit messages follow:
fix host most-positive-fixnum leak in declaration
Found by comparing object code for SORT-VECTOR between clisp and sbcl xc
Fix most-fooative-fixnum leak in number-psxhash
Gah, floats. Most cases will be more complicated to fix than this one.
(Fixing things absolutely properly would be hugely difficult; this fix
should do for now...)
more careful cross-compiler constant-form-value
We need to take values from the xc info database in preference to using
SYMBOL-VALUE, otherwise we'll leak from the host. (In particular, this
one was for function in debug.lisp with lambda lists of the
form (&optional (n most-positive-fixnum))
deal with another host fixnum-related constant leak
This time it's in the definition of the integer constants which are both
fixnums and exactly representable as floats. Amazingly, just above
these definitions are the ones for SB!XC:MOST-POSITIVE-FIXNUM and
friends; no alarm bells were ringing...
fix a fixnum leak in unix-fd type
This mistake [ (deftype foo () `(integer 0 ,most-positive-fixnum)) ]
seems distressingly easy to make. Not easy to guard against, either.
(Aside: is it sensible to define FDs as positive fixnums?)
RCS file: /cvsroot/sbcl/sbcl/version.lisp-expr,v
retrieving revision 1.4403
retrieving revision 1.4404
diff -u -d -r1.4403 -r1.4404
--- version.lisp-expr 24 Apr 2009 12:46:38 -0000 1.4403
+++ version.lisp-expr 24 Apr 2009 13:11:22 -0000 1.4404
@@ -17,4 +17,4 @@
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
Get latest updates about Open Source Projects, Conferences and News.