Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
README | 2023-11-27 | 4.1 kB | |
sbcl-2.3.11-documentation-html.tar.bz2 | 2023-11-27 | 234.1 kB | |
sbcl-2.3.11-release-notes.txt | 2023-11-27 | 4.1 kB | |
sbcl-2.3.11-source.tar.bz2 | 2023-11-27 | 7.7 MB | |
sbcl-2.3.11-x86-64-linux-binary.tar.bz2 | 2023-11-27 | 12.2 MB | |
sbcl-2.3.11-crhodes.asc | 2023-11-27 | 634 Bytes | |
Totals: 6 Items | 20.1 MB | 6 |
changes in sbcl-2.3.11 relative to sbcl-2.3.10: * minor incompatible change: streams with an external-format specified with :REPLACEMENT will use their replacement data once per stream unit that causes a decoding error (rather than, in some cases, once for a sequence of bytes none of which is a valid character start position for that external-format). * minor incompatible change: external-format designators with unsupported or unrecognized options now signal an error when used. * enhancement: During generic function dispatch, for a generic function using standard- or short-method-combination, if there are no applicable primary methods the system will call the generic function SB-PCL:NO-PRIMARY-METHOD, whose default behaviour is to signal an error. Users may define methods on this generic function. * enhancement: external formats for unibyte encodings and utf-8 now support newline variants. * enhancement: character decoding and encoding errors signalled by stream or octet functions now provide a USE-VALUE restart for handlers to provide replacement input or output. * enhancement: READ-SEQUENCE and WRITE-SEQUENCE support user-defined sequences; the default implementation proceeds element-by-element, reading or writing single bytes or characters to or from the stream as appropriate. * bug fix: OCTETS-TO-STRING using unibyte external formats with unallocated codepoints (e.g. iso-8859-3) correctly signal or use replacements rather than taking bits from the address of NIL and converting those bits to a character. * bug fix: FILE-STRING-LENGTH now returns NIL if the input datum is not encodable in the stream's external format. * bug fix: table-based multibyte external formats (EUC-JP, Shift-JIS, GBK) now honour a replacement character (in the external format or through restarts) when encoding to octets. * bug fix: converting from octets using the UCS-2, UCS-4 and UTF-32 external formats no longer reads past the end of an octet array with a non-integral number of two- or four-byte units. * bug fix: converting from octets using the UCS-2, UCS-4, UTF-16 or UTF-32 external formats now returns a simple string, as required by the type declaration of OCTETS-TO-STRING. * bug fix: providing an invalid external format argument to OPEN or WITH-OPEN-FILE (or the internal MAKE-FD-STREAM) no longer leaks a file descriptor. * bug fix: SB-ROTATE-BYTE recognizes out-of-relevant-range BYTE specifications for integers before attempting to cons up enormous bignums for masking and shifting. (lp#2042937) * bug fix: fix type derivation on compiling SB-ROTATE-BYTE forms with non-zero POSITION in the byte specifier. (lp#2042775) * bug fix: fix multiple assembler errors when compiling MAKE-ARRAY, MAKE-STRING and similar with a large constant size. (lp#2037347, lp#2038744) * bug fix: fix internal error when compiling (SETF SBIT) with a large constant index. (lp#2037415) * bug fix: fix internal compiler error on invalid lambda list parameters in LABELS. (lp#2040334) * bug fix: fix internal compiler error when compiling some infinitely-recursive LABELS forms. (lp#2042704) * bug fix: fix internal compiler error when attempting to inline a jump to a label that has been deleted. (lp#2043262) * bug fix: FILL-POINTER should never be made to go negative. (lp#2042452) * optimization: external formats with :REPLACEMENT no longer bind handlers for coding errors around conversion functions, and so should cons less and be faster. * optimization: when the :EXTERNAL-FORMAT argument to STRING-TO-OCTETS or OCTETS-TO-STRING is a compile-time constant, the external format is resolved at load time rather than on each call. * optimization: the compiler is able to constrain the types of inputs to some functions given a derived or asserted type of the function's return value. * optimization: the compiler performs fewer redundant type checks in ASSOC, GETF and similar functions.