New in version 1.2.9

minor incompatible change and bug fix: unboxed numeric constants
on x86oids are arranged in memory differently, and the disassembler
does not show them separately in DISASSEMBLE, but does
if DISASSEMBLE-CODE-COMPONENT is used. (#1421987)

optimization: The compiler's treatment of type specifiers makes
it slightly faster and more memory-efficient. Portable code
should be indifferent to this change, however, users of
SB-INTROSPECT:FUNCTION-TYPE might notice that (MEMBER T NIL)
and (MEMBER NIL T) are both internally collapsed to the former,
so that the latter can never be obtained as part of an FTYPE.

optimization: a TYPEP call in which the second argument is not a
QUOTE form but nevertheless recognized as a compile-time constant
might open-code the test. One scenario for this involves backquote,
such as (TYPEP x `(my-type ,some-arg)). Code which relied upon
deferring until runtime should declare (NOTINLINE TYPEP).
[Due to the sematic constraints of DEFTYPE etc in in CLHS 3.2.2.3,
code requiring delayed evaluation could be unportable though.]

enhancement: unused variables at the top-level are now reported.
(#492200)

New in version 1.2.8

enhancement: backtrace for invalid argument count produces the exact
supplied arguments including the extra ones, on x86, x86-64 and ARM.

enhancement: a STYLE-WARNING is signaled for DEFSTRUCT accessors which
are used before the structure is defined; similarly for the predicate.

optimization: FORMAT NIL with only ~a and string arguments is transformed
into CONCATENATE.

optimization: POSITION and FIND when inlined into code that is compiled
with qualities of safety < 2 and speed > space will no longer signal
an error on circular lists, but will potentially loop forever if given
no :END constraint. As was always the case, calls that are not inlined
are safe regardless of lexical policy.