From: Christophe Rhodes Date: Mon, 10 Feb 2003 12:32:06 +0000 (+0000) Subject: 0.7.12.33: X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=e9d7104061dbcb5df1b0cbdb4afa559b7044ab62;p=sbcl.git 0.7.12.33: Some easy fixes: ... SYMBOL-FUNCTION returns a function in our implementation (Robert E. Brown sbcl-devel 2003-02-06) ... READ-DELIMITED-LIST returns a list (Tony Martinez sbcl-devel 2003-02-09) ... make src/cold/chill.lisp loadable from anywhere (Rudi Schlatte sbcl-devel 2003-02-09) Also frob NEWS: put exciting things such as incompatible changes and new contrib at the top of the section. --- diff --git a/NEWS b/NEWS index 66ca016..ac16198 100644 --- a/NEWS +++ b/NEWS @@ -1502,6 +1502,17 @@ changes in sbcl-0.7.12 relative to sbcl-0.7.11: ** CONSTANTP now returns true for all self-evaluating objects. changes in sbcl-0.7.13 relative to sbcl-0.7.12: + * incompatible packaging change: in line with Unix convention, + SBCL now looks for its core file in /usr/{local/,}lib/sbcl/sbcl.core + if it's not in $SBCL_HOME. It also sets SBCL_HOME to match. + * REQUIRE and PROVIDE are now optionally capable of doing something + useful: see the documentation string for REQUIRE + * infrastructure for a managed SBCL contrib system: contributed + modules in this release include: + ** the ASDF system definition facility; + ** an interface to the BSD Sockets API; + ** an ACL-like convenience interface to the repl; + (thanks to Kevin Rosenberg) * fixed a bug in LOG, so that LOG of a rational argument near 1 now gives a closer approximation to the right answer than previously. (thanks to Raymond Toy) @@ -1535,6 +1546,9 @@ changes in sbcl-0.7.13 relative to sbcl-0.7.12: many list operations. (thanks to Robert E. Brown) * fixed a bug in the reader: the #n# reader macro now works for objects of type STANDARD-OBJECT. (reported by Tony Martinez) + * the compiler is now aware that SYMBOL-FUNCTION returns a FUNCTION + and that READ-DELIMITED-LIST returns a LIST. (thanks to Robert + E. Brown and Tony Martinez respectively) * fixed some bugs revealed by Paul Dietz' test suite: ** ARRAY-IN-BOUNDS-P now allows arbitrary integers as arguments, not just nonnegative fixnums; @@ -1543,17 +1557,9 @@ changes in sbcl-0.7.13 relative to sbcl-0.7.12: freshly-consed result bit-array); ** ELT now signals an error on an invalid sequence index in safe code; - * incompatible packaging change: in line with Unix convention, - SBCL now looks for its core file in /usr/{local/,}lib/sbcl/sbcl.core - if it's not in $SBCL_HOME. It also sets SBCL_HOME to match - * REQUIRE and PROVIDE are now optionally capable of doing something - useful: see the documentation string for REQUIRE - * infrastructure for a managed SBCL contrib system: contributed - modules in this release include - - the ASDF system definition facility - - an interface to the BSD Sockets API - - an ACL-like convenience interface to the repl - (thanks to Kevin Rosenberg) + ** the type system is now cleverer about negations of numeric + types, and consequently understands the BIGNUM and RATIO types + better; planned incompatible changes in 0.7.x: * (not done yet, but planned:) When the profiling interface settles diff --git a/src/cold/chill.lisp b/src/cold/chill.lisp index 3f95a41..9878c7e 100644 --- a/src/cold/chill.lisp +++ b/src/cold/chill.lisp @@ -20,7 +20,7 @@ (in-package "SB-COLD") ;;; We need the #! readtable modifications. -(load "src/cold/shebang.lisp") +(load (merge-pathnames "shebang.lisp" *load-truename*)) ;;; #!+ and #!- now refer to *FEATURES* values (as opposed to the way ;;; that they referred to special target-only *SHEBANG-FEATURES* values diff --git a/src/compiler/fndb.lisp b/src/compiler/fndb.lisp index 969c5d8..8aa1239 100644 --- a/src/compiler/fndb.lisp +++ b/src/compiler/fndb.lisp @@ -108,7 +108,14 @@ ;;; This is not FLUSHABLE, since it's required to signal an error if ;;; unbound. -(defknown (symbol-value symbol-function) (symbol) t ()) +(defknown (symbol-value) (symbol) t ()) +;;; From CLHS, "If the symbol is globally defined as a macro or a +;;; special operator, an object of implementation-dependent nature and +;;; identity is returned. If the symbol is not globally defined as +;;; either a macro or a special operator, and if the symbol is fbound, +;;; a function object is returned". Our objects of +;;; implementation-dependent nature happen to be functions. +(defknown (symbol-function) (symbol) function ()) (defknown boundp (symbol) boolean (flushable)) (defknown fboundp ((or symbol cons)) boolean (unsafely-flushable explicit-check)) @@ -946,7 +953,7 @@ (defknown (read read-preserving-whitespace read-char-no-hang read-char) (&optional streamlike t t t) t (explicit-check)) -(defknown read-delimited-list (character &optional streamlike t) t +(defknown read-delimited-list (character &optional streamlike t) list (explicit-check)) (defknown read-line (&optional streamlike t t t) (values t boolean) (explicit-check)) diff --git a/version.lisp-expr b/version.lisp-expr index bf5f233..7d3ae38 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -18,4 +18,4 @@ ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.7.12.32" +"0.7.12.33"