New SBCL versions are usually released at the end of each
month: check the Sourceforge File List to see the current version. The new features of the two most recent SBCL releases are listed below.
Please see the complete news page for details on all historical SBCL releases.
New in version 1.2.2Back to top
- incompatible change: the #\` ("backquote") reader macro was reimplemented
to support robust pretty-printing. Reading a form involving #\` produces
an invocation of the QUASIQUOTE ordinary macro which may contain subforms
that are not lists. Code that unportably attempts operations on
un-evaluated forms resulting therefrom, e.g.
(SUBST a b (read-from-string "`(x (,y))"))
might generate incorrect results and/or errors.
- enhancement: support for GNU/kFreeBSD x86.
- enhancement: ATOMIC-INCF and ATOMIC-DECF can operate on (CAR x), (CDR x)
and DEFGLOBAL variables of type fixnum.
- enhancement: arithmetic constant reduction is now performed on defconstant
constants too. (#1337069).
- bug fix: certain ftype proclamations containing &optional t &rest t no
longer cause subsequent definitions to signal bogus style-warnings.
- bug fix: #\Bell and #\Bel now read to different characters. (#1319452).
- bug fix: CAS SYMBOL-VALUE on locally special variables didn't work.
Older SBCL releases
New in version 1.2.1Back to top
- enhancement: GENCGC is enabled on ARM.
- enhancement: better error reporting for invalid calls to local functions.
- enhancement: support for GNU/kFreeBSD distributions. (#1079954, thanks
to Christoph Egger)
- enhancement: experimental support for threads on NetBSD/x86-64. (thanks
to Robert Swindells)
- enhancement: support for DragonFly BSD. (#1292845, thanks to Vasily
- bug fix: TYPE-OF must not return AND/OR/NOT expressions.
- bug fix: accessing NIL arrays stopped producing errors. (#1311421)
- bug fix: DISASSEMBLE no longer prints unwanted stuff. (#1251861)
- bug fix: compiling SVREF on unknown types no longer produces scary errors.
- bug fix: assorted LOOP fixes and enhancements. (#645534, #1322923,
#700538, #613876, #695286, #798388)
- bug fix: silence compiler notes from the SEARCH transform. (#1071310)
- bug fix: array type intersection handles T and unknown element types
- bug fix: fix a corner case in array type unparsing that would result in
misleading translations from our internal type representation.
- bug fix: array-rank now sees through union and intersection types.
- bug fix: when DECLARE expressions are in the wrong place, be careful not
to attempt to evaluate the subforms. (#573747; thanks to Roman
- bug fix: misplaced and missing declarations in DEFTRANSFORM. (#1066451)
- bug fix: FBOUNDP returned NIL for a class of incorrect function names
instead of signaling an error. (#1095483)
- bug fix: fix a compile-time AVER in regalloc: lifetime analysis
used to (rarely) introduce duplicate conflict markers in a single
TN/block pair. (#1327008)