logo
Kurashizu Blogwhere ideas flow
  • Home
  • News
  • Blog
  • About
  • Home
  • News
  • Blog
  • About

© 2026 Kurashizu. All rights reserved.

Admin·New Post·Service Status
Powered by Cloudflare·01.11.26
← Back to news

Steel Bank Common Lisp version 2.6.7

Original article
sbcl.org|25 points|1 comments|by tmtvl|Jul 28, 2026

Steel Bank Common Lisp: Version 2.6.7 Update

Welcome to the news hub for Steel Bank Common Lisp (SBCL). Generally, new iterations of SBCL are deployed toward the conclusion of every month. To find the most recent build, please visit the SourceForge File List.

SourceForge Logo

📜 Version Archive

The following versions have been released in the project's history:

Major SeriesMinor/Patch Versions
2.6.x2.6.7, 2.6.6, 2.6.5, 2.6.4, 2.6.3, 2.6.2, 2.6.1, 2.6.0
2.5.x2.5.11 →\rightarrow→ 2.5.0
2.4.x2.4.11 →\rightarrow→ 2.4.0
2.3.x2.3.11 →\rightarrow→ 2.3.0
2.2.x2.2.11 →\rightarrow→ 2.2.0
2.1.x2.1.11 →\rightarrow→ 2.1.0
2.0.x2.0.11 →\rightarrow→ 2.0.0
1.5.x1.5.9 →\rightarrow→ 1.5.0
1.4.x1.4.16 →\rightarrow→ 1.4.0
1.3.x1.3.21 →\rightarrow→ 1.3.0
1.2.x1.2.16 →\rightarrow→ 1.2.0
1.1.x1.1.18 →\rightarrow→ 1.1.0
1.0.x1.0.58 →\rightarrow→ 1.0
0.9.x0.9.18 →\rightarrow→ 0.9.0
0.8.x0.8.21 →\rightarrow→ 0.8.0, 0.8alpha.0
0.7.x0.7.14 →\rightarrow→ 0.7.0
0.6.x0.6.13 →\rightarrow→ 0.6.0

🚀 New in Version 2.6.7

Released: 2026-07-28

📖 Documentation Overhaul

A significant addition is the SB-MANUAL contribution module. This module embeds the SBCL manual directly within the docstrings of section definitions.

Interactive Exploration: Because the manual is now tied to Lisp definitions, users can explore it interactively using tools like Slime's M-. command. For those preferring a browser, the MGL-PAX library (available out-of-tree) provides browsing capabilities.

Additionally, fixnum.com (an independent project) offers the manual in several formats:

  • PDF (heavily linked)
  • HTML (heavily linked)
  • Markdown
  • Plain Text

Manual Generation Workflow:

🛠 Hardware & Architecture Support

  • X86-64: Added support for AVX512 instructions (Credit: Sylvia Harrington).
  • ARM64 & X86-64: Expanded SIMD instruction support (Credit: Robert Smith & Arthur Miller).
  • ARM64: Resolved a miscompilation issue regarding SAP-REF-N (Credit: Arthur Miller).
  • MIPS & LoongArch: INTEGER-LENGTH for primitive types now avoids loop-based implementation (Credit: Hayley Patton).

🐛 Bug Fixes

  • Read System: When *READ-SUPPRESS* is set to T, the system no longer triggers warnings such as internal-feature no longer present on *FEATURES*.
  • Compiler: Fixed a type-error occurring during the compilation of CONCATENATE calls when arguments are conditionally known to be non-sequences.
  • Type System: Fixed issue #2160747 where (EQL complex) types were not recognized as numeric.
  • Math: Improved the handling of non-signalling (quiet) NaN inputs for the LOG function (#2160429).
  • Compiler: Fixed the miscompilation of MULTIPLE-VALUE-CALL (#2160268, reported by Woodrow Kiang).

⚡ Optimizations

  • Complex Numbers: Passing constant complex numbers to local functions no longer requires consing (#2160207, reported by Vasily Postnicov).
  • UTF-8: Now utilizes enhanced SIMD routines for conversions where supported.
  • Compiler Transforms: COUNT transforms are now compatible with a broader range of keyword arguments.
  • SB-ALIEN: Reduced instruction count for SB-ALIEN:DEREF by at least one operation.
  • Performance: The compiler's sparse set implementation has been tuned for better real-world efficiency.

📝 Documentation Updates

  • FFI: SB-MANUAL:@FOREIGN-FUNCTION-INTERFACE now correctly identifies arrays as column-major row-major.
  • Markup: Internal docstrings now utilize a subset of Markdown (Credit: Burson), though DOCUMENTATION and DESCRIBE will strip some of this formatting.
  • Indexing: A dedicated index for declarations has been added to the manual.

🔄 New in Version 2.6.6

Released: 2026-06-28

⚠️ Incompatible Changes

FeatureChange Description
FDEFINITIONNow returns the outermost wrapper (#799533).
Unsafe C StringsStrings using :EXTERNAL-FORMAT :ASCII are copied as raw bytes. The system no longer checks if the top bit is set: bit7=1\text{bit}_7 = 1bit7​=1.

💻 Platform & Architecture

  • PowerPC: Fixed build issues for 64-bit big-endian systems using ELFv2.
  • macOS 27 (ARM64): The static space address has been relocated (Credit: Piotr Kubaj).
  • ARM64:
    • Optimized SB-THREAD:BARRIER (#2156072, reported by Gary Palter).
    • Fixed a compiler crash in MULTIPLE-VALUE-LIST within argument forms (Credit: Sahil Kang).

🔧 General Fixes & Improvements

  • Trace: Fixed a bug where TRACE failed when *PRINT-READABLY* was true and the return value lacked a readable representation (#2155788, reported by Gary Palter).
  • Type Derivation:
    • The compiler is now more precise when deriving types for COERCE based on input constraints.
    • Improved return type derivation for AREF and ELT.
  • Strings: Increased speed for encoding and decoding UTF-8 C strings.
  • Lists: The expression (length (intersection a b)) has been optimized to avoid creating an intermediate list.
  • Manual:
    • Added a new section for SB-INTROSPECT, including better comments and docstrings.
    • Corrected various typos and typesetting errors in the user manual.