Update of /cvsroot/sbcl/sbcl
In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv26363
18.104.22.168: revisit FIND/POSITION bounds checking on lists
The spec doesn't actually /require/ us to signal an error if we
are not in danger of running out of bounds as far as I can tell.
So don't traverse the entire list during forward searches if we
find what we are looking for before specified :END or the list end.
Patch by Alec Berryman.
This revisits lp#452008, and fixed lp#554385.
RCS file: /cvsroot/sbcl/sbcl/NEWS,v
retrieving revision 1.1731
retrieving revision 1.1732
diff -u -d -r1.1731 -r1.1732
--- NEWS 3 Apr 2010 19:56:28 -0000 1.1731
+++ NEWS 4 Apr 2010 09:03:08 -0000 1.1732
@@ -1,5 +1,5 @@
;;;; -*- coding: utf-8; fill-column: 78 -*-
-changes relative to sbcl-1.0.36:
+changes relative to sbcl-1.0.37:
* INCOMPATIBLE CHANGE: Thread names are now restricted to SIMPLE-STRINGs
like for any other thread-related datastructure (MUTEX, etc.)
* DEPRECATION: the SB-QUEUE contrib was merged into the SB-CONCURRENCY
@@ -48,6 +48,9 @@
CONDITION-NOTIFY on Linux. See threads "lost wakeup in condition-wait /
condition-notify" (Feb 2010) and "Condition-Wait, Deadline handler, waking
up itself" (March 2010) for further details.
+ * bug fix: allow forward FIND and POSITION on lists to elide checking :END
+ against length of the list if the element is found before the specified
+ END is reached. (thanks to Alec Berryman, lp#554385)
changes in sbcl-1.0.37 relative to sbcl-1.0.36:
* enhancement: Backtrace from THROW to uncaught tag on x86oids now shows
RCS file: /cvsroot/sbcl/sbcl/version.lisp-expr,v
retrieving revision 1.4828
retrieving revision 1.4829
diff -u -d -r1.4828 -r1.4829
--- version.lisp-expr 3 Apr 2010 19:56:28 -0000 1.4828
+++ version.lisp-expr 4 Apr 2010 09:03:08 -0000 1.4829
@@ -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".)