Update of /cvsroot/sbcl/sbcl
In directory sc8-pr-cvs1:/tmp/cvs-serv7267
Modified Files:
BUGS NEWS version.lisp-expr
Log Message:
0.8.3.47:
* Fix bugs in PARSE-INTEGER related to the index in
:JUNK-ALLOWED NIL case and to displaced string processing
reported by Paul Dietz;
* fix bug 145b: in CONVERT-MEMBER-TYPE bail out to (TYPE-OF
MEMBER) in difficult cases.
Index: BUGS
===================================================================
RCS file: /cvsroot/sbcl/sbcl/BUGS,v
retrieving revision 1.343
retrieving revision 1.344
diff -u -d -r1.343 -r1.344
--- BUGS 8 Sep 2003 13:42:12 -0000 1.343
+++ BUGS 9 Sep 2003 07:09:48 -0000 1.344
@@ -501,17 +501,7 @@
conformance problem, since seems hard to construct useful code
where it matters.)
- b.
- * (defun foo (x)
- (declare (type (double-float -0d0) x))
- (declare (optimize speed))
- (+ x (sqrt (log (random 1d0)))))
- debugger invoked on condition of type SIMPLE-ERROR:
- bad thing to be a type specifier: ((COMPLEX
- (DOUBLE-FLOAT 0.0d0
- #.SB-EXT:DOUBLE-FLOAT-POSITIVE-INFINITY))
- #C(0.0d0 #.SB-EXT:DOUBLE-FLOAT-POSITIVE-INFINITY)
- #C(0.0d0 #.SB-EXT:DOUBLE-FLOAT-POSITIVE-INFINITY))
+ b. (fixed in 0.8.3.43)
146:
Floating point errors are reported poorly. E.g. on x86 OpenBSD
Index: NEWS
===================================================================
RCS file: /cvsroot/sbcl/sbcl/NEWS,v
retrieving revision 1.400
retrieving revision 1.401
diff -u -d -r1.400 -r1.401
--- NEWS 8 Sep 2003 13:42:12 -0000 1.400
+++ NEWS 9 Sep 2003 07:09:49 -0000 1.401
@@ -2033,6 +2033,8 @@
x86 LEA instruction for multiplication by constants.
* bug fix: in some situations compiler did not report usage of
generic arithmetic in (SPEED 3) policy.
+ * bug 145b fix: compiler used wrong type specifier while converting
+ MEMBER-types to numeric.
* fixed some bugs revealed by Paul Dietz' test suite:
** the RETURN clause in LOOP is now equivalent to DO (RETURN ...).
** ROUND and FROUND now give the right answer when given very
@@ -2042,6 +2044,10 @@
** optimizer for (EXPT X 0) did not work for X not of type FLOAT.
** (GCD 0 <negative-integer>) returned <negative-integer>.
** LCM should return a non-negative integer.
+ ** PARSE-INTEGER returned the index of a terminator instead of the
+ upper bounding index of a substring in case :JUNK-ALLOWED NIL.
+ ** PARSE-INTEGER returned an incorrect index being applied to a
+ displaced string.
planned incompatible changes in 0.8.x:
* (not done yet, but planned:) When the profiling interface settles
Index: version.lisp-expr
===================================================================
RCS file: /cvsroot/sbcl/sbcl/version.lisp-expr,v
retrieving revision 1.1231
retrieving revision 1.1232
diff -u -d -r1.1231 -r1.1232
--- version.lisp-expr 8 Sep 2003 16:57:56 -0000 1.1231
+++ version.lisp-expr 9 Sep 2003 07:09:49 -0000 1.1232
@@ -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".)
-"0.8.3.46"
+"0.8.3.47"
|