Skip to content
changes in sbcl-2.5.9 relative to sbcl-2.5.8:
  * minor incompatible change: remove (SETF SB-EXT:POSIX-GETENV), which only
    ever existed as an operator in SBCL on Windows.
  * minor incompatible change: (LOG -0.0) now returns
    SINGLE-FLOAT-NEGATIVE-INFINITY, more consistently with IEEE 754.
  * minor incompatible change: (EXPT 0.0 0.0) now returns 1.0, rather than
    signalling an error.
  * platform support
    ** restore functionality on NetBSD.  (thanks to Masatoshi SANO)
    ** fix building SBCL as a shared library on ARM64.  (lp#2122059, reported
       by Guillaume LE VAILLANT)
  * optimization: TYPEP with array types does less work in many cases.
  * optimization: COMPLEMENT on a known function can be transformed away in
    more cases.
  * optimization: calls to local functions with &REST arguments can be
    optimized in more cases.
  * optimization: bound checks can be eliminated in ROW-MAJOR-AREF based on
    constraints relating the index to the available array elements.
    (lp#2121253, thanks to Vasily Postnicov)
  * optimization: function type declarations no longer inhibit inlining local
    functions.  (lp#2121351, reported by kbhit)
  * optimization: bulk movement of memory in the system is implemented with
    less overhead around memmove().
  * optimization: MAKE-ARRAY with dimensions coming from ARRAY-DIMENSIONS on
    an array with known dimensions avoids consing an intermediate dimensions
    list.
  * optimization: a number of arithmetic operators and relations in
    combination with some constant arguments do partial expression
    simplification at compile-time.  (lp#2122063 for %NEGATE thanks to Vasily
    Postnicov)