Skip to content

Tags

Tags give the ability to mark specific points in history as being important
  • sbcl.1.0.33

  • sbcl_1_0_33

    changes in sbcl-1.0.33 relative to sbcl-1.0.32:
      * new port: support added for x86-64 NetBSD.  (thanks to Aymeric Vincent)
      * improvement: support O_LARGEFILE access to files larger than 2GB on
        x86-64/linux.  (thanks to Daniel Janus; launchpad bug lp#453080)
      * new feature: SB-INTROSPECT:WHO-SPECIALIZES-DIRECTLY to get a list of
        definitions for methods specializing on the passed class itself.
      * new feature: SB-INTROSPECT:WHO-SPECIALIZES-GENERALLY to get a list of
        definitions for methods specializing on the passed class itself, or on
        subclasses of it.
      * new build flag: :sb-xref-for-internals; SBCL will collect xref information
        about itself during the build (e.g. for M-? in Slime), if this flag is
        enabled in customize-target-features.lisp. This will increase the core
        size by about 5-6mb, though, so it's mostly interesting to SBCL
        developers.
      * new feature: various GENCGC tuning parameters have been experimentally
        documented and exported from SB-EXT. See documentation for details.
      * fixes and improvements related to Unicode and external formats:
        ** the Unicode character database has been upgraded to the
           Unicode 5.2 standard, giving names and properties to a number of new
           characters, and providing a few extra characters with case
           transformations.
        ** improvement: restarts for providing replacement input/output on coding
           errors for fd-stream external formats.
        ** improvement: where :<encoding> is a keyword corresponding to an
           external format the system supports, it is now possible to specify
           (:<encoding> :replacement <character>) as an external format which will
           automatically substitute <character> on encoding or decoding errors for
           streams and for STRING-TO-OCTETS and its inverse.  (launchpad bug
           lp#317072)
        ** improvement: the file streams underlying the standard streams (such as
           *STANDARD-INPUT*, *TERMINAL-IO*) are opened with an external format
           which uses the replacement mechanism to handle encoding errors,
           preventing various infinite error chains and unrecoverable I/O
           confusion.
        ** minor incompatible change: the utf-8 external format now correctly
           refuses to encode Lisp characters in the surrogate range (char-codes
           between #xd800 and #xdfff).
        ** fix a typo preventing conversion of strings into octet vectors
           in the latin-2 encoding.  (reported by Attila Lendvai; launchpad bug
           lp#471689)
        ** fix a bug in the octet multibyte handling of decoding errors and the
           USE-VALUE restart.  (launchpad bug lp#314939)
        ** fix the bug underlying the expected failure in the FORCE-END-OF-FILE
           restart on fd-stream decoding errors.
        ** fix a bug in the ATTEMPT-RESYNC fd-stream decoding restart when the
           error is near the end of file.
        ** fix a double-error case in unibyte octet conversions, when the first
           use of USE-VALUE is ignored.
        ** fix bugs in handling of undefined code points in unibyte encodings.
        ** fix LISTEN (and consequent hangs in READ-CHAR-NO-HANG) on bivalent
           streams after an UNREAD-CHAR.
      * enhancement: SB-INTROSPECT:ALLOCATION-INFORMATION also reports if the
        object is allocated in a boxed region of dynamic space.
      * enhancement: SB-POSIX:FORK now signals an error if an attempt to
        fork with multiple Lisp threads running is made, instead of going
        ahead with unpredictable consequences. (reported by Leslie Polzer)
      * bug fix: uses of slot accessors on specialized method parameters within
        the bodies of SLOT-VALUE-USING-CLASS methods no longer triggers a type
        error while finalizing the class.  This fix may cause classes with slot
        accessors to be finalized later than previously.  (reported by Lars Rune
        Nøstdal; launchpad bug lp#473699)
      * bug fix: restore buildability on the MIPS platform.  (regression from
        1.0.30.38, reported by Samium Gromoff)
      * bug fix: inspecting closures is less likely to fail with a type error.
      * bug fix: no timer starvation when setting the system clock back.
        (launchpad bug lp#460283)
      * bug fix: WITH-STANDARD-IO-SYNTAX now binds *PRINT-PPRINT-DISPATCH* to the
        standard pprint dispatch table as specified by CLHS.
      * bug fix: give CLISP a hint about a type declaration to enable it to build
        the cross-compiler without warnings.  (thanks to Josh Elasser; launchpad
        bug lp#396597)
      * bug fix: correctly dump literal objects in defaulting forms of arglists.
        (reported by Attila Lendvai; launchpad bug lp#310132)
      * bug fix: distinguish in type specifiers between arrays that might be
        complex and arrays that are definitely complex.  (launchpad bug lp#309129)
      * bug fix: SUBTYPEP knows that the SYMBOL type is not SUBTYPEP the KEYWORD
        type.  (reported by Levente Mészáros; launchpad bug lp#485972)
      * bug fix: setting the value of a symbol-macro within a method in the
        presence of type declarations works properly again.  (reported by Iban
        Hatchondo; launchpad bug lp#485019)
  • sbcl.1.0.32

  • sbcl_1_0_32

    changes in sbcl-1.0.32 relative to sbcl-1.0.31:
      * optimization: faster FIND and POSITION on strings of unknown element type
        in high SPEED policies. (thanks to Karol Swietlicki)
      * optimization: faster CONCATENATE 'STRING in low SPEED policies (reported
        by David Vázquez)
      * improvement: better error signalling for bogus parameter specializer names
        in DEFMETHOD forms (reported by Pluijzer)
      * bug fix: DELETE-FILE once again works on logical pathnames (regression
        since 1.0.30.49)
      * bug fix: LOGICAL-PATHNAME signals a TYPE-ERROR if pathspec is specified
        incorrectly.
      * bug fix: redefinition of a class via DEFCLASS without :DEFAULT-INITARGS
        removes previous default initargs (reported by Lars Rune Nøstdal and
        Samium Gromoff)
      * bug fix: correct WHO-CALLS information for inlined lambdas with complex
        lambda-lists. (reported by Peter Seibel)
      * bug fix: SAVE-LISP-AND-DIE option :SAVE-RUNTIME-OPTIONS did not work
        correctly when starting from an executable core without saved runtime
        options (reported by Faré Rideau, thanks to Zach Beane)
      * bug fix: (SETF SLOT-VALUE) signalled a warning which should have been
        an optimization note instead. (reported by Martin Cracauer)
      * bug fix: WITH-SLOTS did not work with THE forms. (thanks to David Tolpin)
      * bug fix: Have RUN-PROGRAM with :INPUT T only run the subprocess in a
        new process group if it doesn't need to share stdin with the sbcl
        process. (thanks to Leslie Polzer)
      * bug fix: SATISFIES could be misoptimized to refer to a local function.
        (reported by Stanislaw Halik)
  • debian/1.0.31.0-1

    Debian release 1:1.0.31.0-1
  • sbcl.1.0.31

  • upstream/1.0.31.0

  • sbcl_1_0_31

    changes in sbcl-1.0.31 relative to sbcl-1.0.30:
      * improvement: stack allocation is should now be possible in all nested
        inlining cases: failure to stack allocate when equivalent code is manually
        open coded is now considered a bug.
      * improvements related to Unicode:
        ** the Unicode character database has been upgraded to the
           Unicode 5.1 standard, giving names and properties to a number of new
           characters, and providing a few extra characters with case
           transformations.
        ** the system now recognizes and produces names for Unicode Hangul
           syllable characters.
        ** the EBCDIC-US external-format is now supported for octet operations
           (as well as for stream operations).
      * new feature: experimental :EMIT-CFASL parameter to COMPILE-FILE can
        be used to output toplevel compile-time effects into a separate .CFASL
        file.
      * optimization: COERCE to VECTOR, STRING, SIMPLE-STRING and recognizable
        one-dimenstional subtypes of ARRAY is upto 70% faster when the coercion is
        actually needed.
      * optimization: TRUNCATE on known single- and double-floats is upto 25%
        faster.
      * optimization: division of floating point numbers by constants uses
        multiplication by reciprocal when an exact reciprocal exists.
      * optimization: multiplication of single- and double-floats floats by
        constant two has been optimized.
      * optimization: ARRAY-IN-BOUNDS-P is resolved at compile-time when
        sufficient type information is available. (thanks to Leslie Polzer)
      * optimization: SLOT-VALUE and (SETF SLOT-VALUE) with constant slot names on
        known structure objects are as efficient as defstruct generated accessors.
      * optimization: unused vector creation can now be optimized away.
      * improvement: ASDF systems can now depends on SB-INTROSPECT.
      * improvement: a STYLE-WARNING is signalled when a generic function
        clobbers an earlier FTYPE proclamation.
      * improvement: the compiler is able to track the effective type of
        generic function across method addition and removal even in the
        absence of an explicit DEFGENERIC.
      * improvement: DESCRIBE now reports on symbols naming undefined
        but assumed or declared function as well.
      * improvement: recompilation of systems using SB-GROVEL now works
        (thanks to Leslie Polzer)
      * improvements to SB-CLTL2 (thanks to Larry D'Anna):
        ** functions DECLARATION-INFORMATION, PARSE-MACRO, and ENCLOSE have been
           documented.
        ** AUGMENT-ENVIRONMENT and DEFINE-DECLARATION have been implemented.
        ** DECLARATION-INFORMATION now supports declaration name DECLARATION as
           well as user defined declaration names.
        ** VARIABLE-INFORMATION is now aware of alien variables.
      * improvement: improved address space layout on OpenBSD (thanks to Josh
        Elsasser)
      * improvement: pretty-printing of various Lisp forms has been improved
        (thanks to Tobias Rittweiler)
      * bug fix: calls to DECODE-FLOAT and INTEGER-DECODE-FLOAT whose value was
        unused were deleted in safe code. (reported by John Fremlin)
      * bug fix: a failing AVER compiling certain MAKE-ARRAY forms. (reported
        by James Wright)
      * bug fix: some out-of-line array predicates were missing (reported by
        Stelian Ionescu)
      * bug fix: a failing AVER in CONVERT-MV-CALL has been fixed. (thanks to
        Larry D'Anna)
      * bug fix: a failing AVER in %ALLOCATE-CLOSURES conversion has been fixed
        (thanks to Larry D'Anna)
      * bug fix: SLEEP supports times over 100 million seconds on long on OpenBSD
        as well. (reported by Josh Elsasser)
      * bug fix: DELETE-FILE on streams no longer closes the stream with :ABORT T,
        leading to possible attempts to delete the same file twice. See docstring
        on DELETE-FILE for details. (reported by John Fremlin)
      * bug fix: DELETE-FILE once again deletes the file named by the pathname
        designator argument, rather than its truename.  (reported by Luis
        Oliveira)
      * bug fix: the low-level debugger had 32-bit assumptions and was missing
        information about some array types. (thanks to Luis Oliveira)
      * bug fix: moderately complex combinations of inline expansions could
        be miscompiled if the result was declared to be dynamic extent.
      * bug fix: on x86, SAP-REF of sizes greater than 8 bits with offsets of the
        form (+ <variable> <integer>) were miscompiled under certain
        circumstances.
      * bug fix: in some cases no compiler note about failure to stack allocate
        was emitted, even if the objects were in fact heap allocated.
      * bug fix: minor violation of "otherwise inaccessible" rule for stack
        allocation could cause objects users might reasonably expect to
        be heap allocated to be stack allocated.
      * bug fix: DESCRIBE signalled an error for generic functions under
        certain circumstances. (thanks to Leslie Polzer)
      * bug fix: Fixed spelling of an error message.
  • sbcl.1.0.30

  • upstream/1.0.30.0

  • sbcl_1_0_30

    changes in sbcl-1.0.30 relative to sbcl-1.0.29:
      * minor incompatible change: SB-THREAD:JOIN-THREAD-ERROR-THREAD and
        SB-THREAD:INTERRUPT-THREAD-ERROR-THREAD have been deprecated in favor
        of SB-THREAD:THREAD-ERROR-THREAD.
      * new contrib module: SB-QUEUE provides thread-safe lockless FIFO queues.
      * new feature: docstrings for local and anonymous functions are no longer
        discarded. (thanks to Leslie Polzer)
      * new feature: SB-THREAD:SYMBOL-VALUE-IN-THREAD provides access to symbol
        values in other threads.
      * new feature: SB-INTROSPECT:ALLOCATION-INFORMATION provides information
        about object allocation.
      * optimization: division of a real float by a complex float is implemented
        with a specialised code sequence.
      * optimization: MAKE-INSTANCE with non-constant class-argument but constant
        keywords is an order of magnitude faster.
      * optimization: MAKE-INSTANCE with constant keyword arguments is x2-4 faster
        in the presence of :AROUND or non-standard primary INITIALIZE-INSTANCE
        methods, and similarly for non-standard metaclass classes as long as there
        are no methods additional on MAKE-INSTANCE.
      * optimization: more efficient type-checks for FIXNUMs when the value
        is known to be a signed word on x86 and x86-64.
      * optimization: compiler now optimizes (EXPT -1 INTEGER), (EXPT -1.0 INTEGER),
        and (EXPT -1.0d0 INTEGER) into an ODDP test. (thanks to Stas Boukarev and
        Paul Khuong)
      * optimization: compiler is smarter about delegating argument type checks to
        callees.
      * optimization: several character functions are now compiled somewhat more
        efficiently. (reported by Lynn Quam)
      * optimization: the compiler now derives simple types for LOAD-VALUE-FORMs.
      * improvement: less unsafe constant folding in floating point arithmetic,
        especially for mixed complex/real -float operations.
      * optimization: constant double and single floats are stored in native
        unboxed format on x86[-64].
      * optimization: smarter code for arithmetic operations with constant floats,
        complex floats, or integers on x86[-64].
      * optimization: smarter code for conjugate/multiplication of float complexes
        and abs/negate of floats on x86-64.
      * optimization: more efficient complex float and real float operations on
        x86-64.
      * improvement: complex float division is slightly more stable.
      * improvement: DESCRIBE output has been reworked to be easier to read and
        contains more pertinent information.
      * improvement: failure to provide requested stack allocation compiler notes
        provided in all cases (requested stack allocation not happening without a
        note being issued is now considered a bug.)
      * bug fix: SB-POSIX exports the documented types and functions
        FILE-DESCRIPTOR and FILENAME, and also the corresponding -DESCRIPTOR
        types. (reported by "abhi")
      * bug fix: on 64 bit platforms FILL worked incorrectly on arrays with
        upgraded element type (COMPLEX SINGLE-FLOAT), regression from 1.0.28.55.
        (thanks to Paul Khuong)
      * bug fix: looping around HANDLER-CASE could silently consume stack space
        on each iteration. (reported by "foobar")
      * bug fix: better error signalling when calls to functions seeking elements
        from lists (eg. ADJOIN) are compiled with both :TEST and :TEST-NOT.
        (reported by Tobias Rittweiler)
      * bug fix: regressions in DIRECTORY from 1.0.28.61: pattern matching of
        directory components now works as it used to. (various prolems reported by
        Michael Becker, Gabriel Dos Reis, Cyrus Harmon, and Harald Hanche-Olsen)
      * bug fix: :PTY option in RUN-PROGRAM was broken with stream arguments.
        (reported by Elliot Slaughter, thanks to Stas Boukarev)
      * bug fix: bogus undefined variable warnings from fopcompiled references to
        global variables. (thanks to Lars Rune Nøstdal)
      * bug fix: foreign function names should now appear in backtraces on
        FC6 as well. (reported by Tomasz Skutnik and Tobias Rautenkranz)
      * bug fix: SETF compiler macro documentation strings are not discarded
        anymore.
      * bug fix: GENTEMP is now unaffected by pretty printer dispatch table.
        (thanks to Alex Plotnick)
      * bug fix: SLEEP accepts large integer arguments, truncating them to
        SIGNED-WORD on the assumption that sleeping for 68 years is sufficient
        for anyone. (reported by Leslie Polzer, thanks to Stas Boukarev)
      * bug fix: compiler notes for expensive slot type checks could be emitted
        at runtime MAKE-INSTANCE calls. (reported by Samium Gromoff)
  • debian/1.0.29.11-1

    Debian release 1:1.0.29.11-1
  • debian/1.0.29.1-1

    Debian release 1:1.0.29.1-1
  • upstream/1.0.29.11

  • upstream/1.0.29.1

    fd79e33e · 1.0.29.1: fix FILL ·
  • sbcl.1.0.29

  • sbcl_1_0_29

    changes in sbcl-1.0.29 relative to 1.0.28:
      * IMPORTANT: bug database has moved from the BUGS file to Launchpad
            https://bugs.launchpad.net/sbcl
        Bugs can be reported directly there, or by sending email to
            sbcl-bugs@lists.sourceforge.net
        (no subscription required.)
      * minor incompatible change: under weak type checking policy integer
        types are weakened less aggressively.
      * minor incompatible change: SAVE-LISP-AND-DIE :TOPLEVEL function is now
        allowed to return, which causes SBCL to quit with exit status 0. Previously
        if the function returned with a small integer return value, that value
        was accidentally reused as the exit status.
      * new feature: SB-EXT:DEFINE-HASH-TABLE-TEST allows defining new arguments
        to MAKE-HASH-TABLE :TEST, and MAKE-HASH-TABLE has been extended with
        :HASH-FUNCTION argument. Refer to user manual for details.
      * new feature: SB-EXT:DEFGLOBAL macro allows defining global non-special
        variables.
      * new feature: SB-EXT:GET-TIME-OF-DAY provides access to seconds and
        microseconds since the Unix epoch on all platforms.
      * new feature: SB-EXT:ALWAYS-BOUND proclamation inhibits MAKUNBOUND, and
        allows the compiler to safely elide boundedness checks for special
        variables.
      * new feature: SB-EXT:GLOBAL proclamation inhibits SPECIAL proclamations for
        the symbol, prohibits both lexical and dynamic binding. This is mainly an
        efficiency measure for threaded platforms, but also valueable in
        expressing intent.
      * new feature: UNC pathnames are now understood by the system on Windows.
      * optimization: the compiler uses a specialized version of FILL when the
        element type is know in more cases, making eg. (UNSIGNED-BYTE 8) case
        almost 90% faster.
      * optimization: accesses to potentially non-simple arrays where element type
        is known are 50% faster.
      * optimization: compiler now generates faster array typechecking code.
      * optimization: ARRAY-DIMENSION is now faster for multidimensional and
        non-simple arrays.
      * optimization: multidimensional array accesses in the absence of type
        information regarding array rank are approximately 10% faster due to
        open coding of ARRAY-RANK.
      * optimization: result of (FILL (MAKE-ARRAY ...) ...) and (REPLACE
        (MAKE-ARRAY ...) ...) can be stack allocated if the result of MAKE-ARRAY
        form can be.
      * optimization: result of call to VECTOR can now be stack allocated.
      * optimization: MAKE-ARRAY with :INITIAL-CONTENTS is now vastly faster
        as long as the resulting array is one-dimensional and has a known
        element type. In particular, :INITIAL-CONTENTS (LIST ...) where the
        length of the list matches the known length of the vector does not
        allocate the list as an intermediate step. Ditto for VECTOR and simple
        backquoted forms.
      * optimization: MAKE-ARRAY can now stack allocate in the presence of
        :INITIAL-CONTENTS and :INITIAL-ELEMENT as long as the result has a
        known element type, and is known to be simple and one dimensional.
      * improvement: SBCL now emits a compiler note where stack allocation was
        requested but could not be provided (not in all cases, unfortunately)
      * improvement: better MACHINE-VERSION responses. (thanks to Josh Elsasser)
      * improvement: pretty-printing loop has been implemented properly. (thanks
        to Tobias Rittweiler)
      * documentation: CLOS slot typechecing policy has been documented.
      * bug fix: FILE-AUTHOR no longer signals an error on Windows.
      * bug fix: SB-SPROF could be foiled by foreign code not have a frame
        pointer, leading to memory faults. (thanks to Bart Botta)
      * bug fix: better floating point exception handling on x86/OpenBSD.
        (thanks to Josh Elsasser)
      * bug fix: exit status from QUIT when called under --script was lost
        (reported by Hubert Kauker)
      * bug fix: MAKE-ARRAY for non-zero :INITIAL-ELEMENT always used the
        same implementation of FILL to initialize the array, even if a more
        efficient one was available (reported by Stas Boukarev, thanks to
        Paul Khuong)
      * bug fix: potential miscompilation of array stack allocation on x86 and
        x86-64. (reported by Time Tossavainen)
      * bug fix: some forms of AND, OR, and COND resulted in expansions that could
        result in their subforms being treated as top level forms. (reported by
        James Knight)
      * bug fix: On x86/x86-64 alien functions declared to return integers shorter
        than a machine register could leave garbage in the high bits of the
        result register (bug 316325).
      * bug fix: disable address space randomization Linux/x86-64 as well,
        not just x86-64. (reported by Ken Olum)
      * bug fix: Attempting to DEREF an (ALIEN (* T)) would produce a WARNING and
        generate incorrect code.
      * bug fix: #201; type inference for CONS and ARRAY types could derive
        wrong results in the presence of eg. RPLACA or ADJUST-ARRAY.
      * bug fix: special variables with a proclaimed specific subtype of FUNCTION
        could not be assigned to or bound with PROGV. (reported by Lorenz
        Mösenlechner)
      * bug fix: the value of CL:- in the inspector was the previous expression
        evaluated rather than the expression being evaluated.
      * bug fix: constants can no longer be locally declared special.
      * bug fix: signals delivered to threads started from foreign land (read:
        directly by pthread_create, not by MAKE-THREAD) are redirected to a Lisp
        thread by blocking all signals and resignalling.
      * bug fix: SHARED-INITIALIZE initialized unbound :ALLOCATION :CLASS slots
        from :INITFORM, if any.
  • sbcl.1.0.28

  • sbcl_1_0_28

    changes in sbcl-1.0.28 relative to 1.0.27:
      * a number of bugs in cross-compilation have been fixed, with the ultimate
        result that building under (at least) clisp should be much more reliable.
      * minor incompatible changes: echo-streams now propagate unread-char to the
        underlying input stream, and no longer permit unreading more than one
        character.
      * improvement: on x86/x86-64 Lisp call frames now have the same layout as C
        frames, allowing for instance more reliable backtraces.
      * improvement: the debugger REPL can now reference lexical variables
        by name directly for code compiled with (DEBUG 3).
      * improvement: errors from malformed declarations now have better source
        paths associated with them. (thanks to Tobias Rittweiler)
      * optimization: faster local calls on x86/x86-64
      * bug fix: some error messages for out-of-bound array indexes confused the
        index and the bound. (thanks to Stas Boukarev)
      * bug fix: pretty printing malformed DEFPACKAGE forms (thanks to Sidney
        Markowitz)
      * bug fix: running regressions tests in shells without OSTYPE set now works.
        (reported by Harald Hanche-Olsen)
      * bug fix: more robust static space exhaustion signalling from
        MAKE-STATIC-VECTOR (thanks to Daniel Lowe)
      * bug fix: (SETF DOCUMENTATION) for anonymous function now throws the
        docstring away instead of storing it under names such as (LAMBDA (X)).
        (reported by Leslie Polzer)
      * bug fix: timers could go off in the wrong order, be delayed indefinitely
        (thanks to Ole Arndt for the patch)
      * bug fix: RESTART-FRAME and RETURN-FROM-FRAME stack corruption
      * bug fix: the discriminating function for PRINT-OBJECT no longer preserves
        potentially-invalid effective methods in its cache.
      * bug fix: SB-INTROSPECT:FIND-DEFINITION-SOURCE now works with funcallable
        instances as well (thanks to Paul Khuong)
      * bug fix: using RUN-PROGRAM does not interfere with SB-POSIX:WAIT,
        SB-POSIX:WAITPID and their C equivalents.
      * bug fix: RUN-PROGRAM does not crash on Darwin when stressed.
  • sbcl.1.0.27