Skip to content
changes in sbcl-2.4.0 relative to sbcl-2.3.11:
  * minor incompatible change: *COMPILE-VERBOSE* and *LOAD-VERBOSE* are bound
    to NIL when the system is started with the --script command-line argument.
    (reported by Hraban Luyat, thanks to Nicolas Martyanoff)
  * minor incompatible change: when looking for its core file, the system
    checks the validity of whatever is pointed to by /proc/self/exe, and
    assesses argv[0] if /proc/self/exe is invalid.  (thanks to Philipp Marek)
  * minor incompatible change: the system no longer provides type names on the
    standard (CL) symbols ARRAY-RANK, ARRAY-TOTAL-SIZE, PATHNAME-HOST,
    PATHNAME-TYPE, PATHNAME-DIRECTORY, FLOAT-RADIX or FLOAT-DIGITS.
    (lp#2045559)
  * platform support
    ** the mark-region parallel garbage collector can be enabled on arm64.
       (Thanks to Hayley Patton)
    ** fix build on modern FreeBSDs.  (lp#2046996, thanks to David J. Flander)
  * bug fix: restore compiler type inference correctness on calls to REDUCE
    with :INITIAL-VALUE but no :FROM-END.  (lp#2044856, reported by Patrick
    Poitras)
  * bug fix: compiler error when declaring SB-EXT:MUFFLE-CONDITIONS on an
    unknown type.  (lp#2045442)
  * bug fix: the disassembler provided non-pretty output for registers in some
    cases.  (lp#2046004, reported by Fedorov Alexander)
  * bug fix: the system is slightly less likely to exhaust the stack again
    when reporting a control stack exhaustion error.
  * optimization: GC write barriers are eliminated in more cases.
  * optimization: improved type derivation of iteration variables with mixed
    types.
  * optimization: remove unused initial values from LET bindings, improving
    register type selection.
  * optimization: lower EQUALP/EQUAL/EQL to EQL/EQ in FIND/MEMBER based on the
    input types.
  * optimization: better type derivation for DPB, LOGIOR.