Tags give the ability to mark specific points in history as being important
-
sbcl-1.0.53
7d078261 · ·changes in sbcl-1.0.53 relative to sbcl-1.0.52: * enhancement: on 64-bit targets, in src/compiler/generic/early-vm.lisp, the parameter n-fixnum-tag-bits may now vary from 1 (fixnum = (signed-byte 63)) to 3 (fixnum = (signed-byte 61)) at build-time. * enhancement: SB-EXT:WAIT-FOR allows waiting for arbitrary events. * minor(?) incompatible(?) change: The default fixnum width on 64-bit targets is now 63 bits (up from 61). * enhancement: DESCRIBE now reports a lambda-list and source location for complext setf-expanders. * bug fix: PUSH, PUSHNEW, POP, REMF, INCF, DECF, DEFINE-MODIFY-MACRO, GETF, LOGBITP, LDB, and MASK-FIELD now arrange for non-primary values of multiple-valued places to be set to NIL, instead of signalling an error (per a careful reading of CLHS 5.1.2.3). * bug fix: floating-point traps now work on darwin/x86 and /x86-64. * bug fix: repair crash in x86oid darwin signal handling emulation when built with certain compilers. * bug fix: SB-ROTATE-BYTE misrotated to the right when using constant rotation arguments on x86-64. (lp#882151) * bug fix: low-level control flow optimisations could result in bogus code in functions with tail and non-tail calls to local functions on x86oids. (lp#883500) * bug fix: on SPARC/:sb-unicode, avoid crashing the assembler by trying to emit literal characters > (code-char 4095), for comparisons with constant characters. * bug fix: ROOM reported only the low 32 bits of dynamic space usage on 64 bit platforms. (lp#881445) * bug fix: DELETE-FILE did not MERGE-PATHNAMES, making it possible to delete the wrong file when using relative pathnames. (lp#882877) * bug fix: optimized SEARCH of vectors-on-vectors mishandled zero-length sequences and :KEY NIL. -
sbcl-1.0.52
11e4aa52 · ·changes in sbcl-1.0.52 relative to sbcl-1.0.51: * enhancement: ASDF has been updated to version 2.017. * enhancement: the --core command line option now accepts binaries with an embedded core. * enhancement: when built with :sb-core-compression, core files (regular or executable) can be compressed with zlib. Use the :COMPRESSION argument to SAVE-LISP-AND-DIE to specify a compression level. * enhancement: --[no-]merge-core-pages determines whether the runtime hints the operating system that identical core pages between SBCL processes should share the same physical memory. Default is to only enable this for compressed cores. * optimization: SLEEP no longer conses. * optimization: *PRINT-PRETTY* no longer slows down printing of strings or bit-vectors when using the standard pretty-print dispatch table. * bug fix: non-function FTYPE declarations no longer cause a compiler-error. (lp#738464) * bug fix: compiler-errors causes by MEMBER types in conjunction with with AREF, CHAR, etc. (lp#826971) * bug fix: compiler-errors causes by integer arguments with composed of multiple ranges to ARRAY-IN-BOUNDS-P. (lp#826970) * bug fix: ,@ and ,. now signal a read-time error for certain non-list expressions. (lp#770184) * bug fix: complex single float literals are correctly aligned when used as arguments of arithmetic operators. * bug fix: on 32-bit platforms, rounding of double floats larger than a fixnum is correct. (reported by Peter Keller) * bug fix: stray FD-HANDLERs are no longer left lying around after unwinds from RUN-PROGRAM. (lp#840190, reported by Dominic Pearson; fix from Max Mikhanosha) * bug fix: redefining classes such that slots with custom allocation are added or removed works again. -
-
sbcl-1.0.51
a546163e · ·changes in sbcl-1.0.51 relative to sbcl-1.0.50: * minor incompatible change: SB-BSD-SOCKET socket streams no longer participate in SERVE-EVENT by default: pass :SERVE-EVENTS T to MAKE-SOCKET-STREAM if using SERVE-EVENT. * enhancement: added support for socket keepalive timeout intervals and probe counts on Linux. * enhancement: building 32-bit SBCL on Linux/x86-64 now works without a chroot. (Use "SBCL_ARCH=x86 sh make.sh" to build.) * enhancement: added new toplevel options --quit and --non-interactive (lp#822712). * enhancement: the Windows port of SBCL now builds and runs on Wine (thanks to Anton Kovalenko). * enhancement: more, and more correct, SSE instruction definitions on x86-64 (thanks to Alexander Gavrilov). * enhancement: SB-EXT:SPIN-LOOP-HINT assembles to an instruction designed to help the processor execute spin loops, when applicable. Currently implemented for x86 and x86-64. * optimization: unsigned integer divisions by a constant are implemented using multiplication (affects CEILING, FLOOR, TRUNCATE, MOD, and REM.) * optimization: improved type-derivation for LOAD-TIME-VALUE. * bug fix: correct RIP offset calculation in SSE comparison and shuffle instructions. (lp#814688) * bug fix: COERCE to unfinalized extended sequence classes now works. (reported by Jan Moringen; lp#815155) * bug fix: a compiler error during typecheck generation, reported by Eric Marsden. (lp#816564) * bug fix: obsolete instance protocol fires when shared slots are added or removed. * bug fix: fixed-format floating point printing with scaling factors. (lp#811386) * bug fix: using GCC >= 4.6 to build SBCL on x86 no longer breaks backtraces. (lp#818460) * bug fix: better backtraces for interrupted syscall frames on x86. (lp#549673) * bug fix: SSE comparison instructions can be disassembled even when one operand is in memory. (lp#814702) * bug fix: incomplete writes when not using SERVE-EVENTS. (lp#820599) * bug fix: MULTIPLE-VALUE-BIND + VALUES -> LET conversion could lose derived type information associated with the VALUES form. * bug fix: broken warnings/errors for type-errors involving LOAD-TIME-VALUE forms. (lp#823014) * bug fix: OPEN :IF-EXISTS :APPEND now returns correct FILE-POSITION before first write (lp#561642). * bug fix: compiled closures from EVAL could not be DESCRIBEd. (lp#824974) * bug fix: bound propagation involving conversion of large bignums to floats no longer signals a SIMPLE-TYPE-ERROR, reported by Lutz Euler. (lp#819269) * bug fix: &REST to &MORE conversion still works in unsafe call to known functions; reported by Lutz Euler (lp#826459). * bug fix: bogus deadlocks from interrupts and GCs. (lp#807475, regression since 1.0.48) -
sbcl-1.0.50
da8bc5f3 · ·changes in sbcl-1.0.50 relative to sbcl-1.0.49: * enhancement: errors from FD handlers now provide a restart to remove the offending handler. * enhancement: SB-INTROSPECT:FIND-DEFINITION-SOURCE now works on structure copiers as well. * enhancement: location of user or system initialization file can now easily be customized for saved cores. See: SB-EXT:*USERINIT-PATHNAME-FUNCTION* and SB-EXT:*SYSINIT-PATHNAME-FUNCTION*. * enhancement: SB-EXT:MAKE-THREAD accepts an argument list designator for the thunk, as a keyword argument, :arguments. * enhancement: constraint propagation is simplified (and sped up) when COMPILATION-SPEED > SPEED. * enhancement: SB-ALIEN exports alien type specifiers SIZE-T and OFF-T. * enhancement: debugger understands &MORE arguments better. * optimization: extracting bits of a single-float on x86-64 has been optimized. (lp#555201) * optimization: MAP and MAP-INTO are more efficient for non-simple vectors, when (> SPEED SPACE). * optimization: local call trampolines (x86 and x86-64) are emitted inline. * optimization: implicit value cells for dynamic-extent closed-over bindings on x86 and x86-64 can hold unboxed values as well. * meta-optimization: improved compilation speed, especially for large functions. (lp#792363 and lp#394206) * bug fix: bound derivation for floating point operations is now more careful about rounding possibly closing open bounds. (lp#793771) * bug fix: SB-POSIX:SYSCALL-ERROR's argument is now optional. (accidental backwards incompatible change in 1.0.48.27) * bug fix: occasional debugger errors in when a type-error occured in a function with dynamic-extent &rest list. * bug fix: &optional and &key supplied-p arguments in DEFSTRUCT boa-construtors can be used to initialized structure slots. * bug fix: FMAKUNBOUND removes the MACRO-FUNCTION, should one exist. (lp#795705, regression) * bug fix: DIRECTORY works better on logical pathnames. * bug fix: RUN-PROGRAM no longer fails spuriously when argument strings are of the order of ARRAY-TOTAL-SIZE-LIMIT. (lp#787237) * bug fix: the compiler no longer constant-folds NaNs in MAKE-{SINGLE,DOUBLE}-FLOAT. (lp#486812) * bug fix: FORMAT now handles floating point rounding correct, eg. (format nil "~,1F" 0.01) => "0.0" instead of "0.01" as previously. (lp#308961) * bug fix: style warning during lambda-list introspection of generic functions with both optional and key argments. * bug fix: regalloc doesn't barf on unused TNs due to type-directed constant folding. (lp#729765) * bug fix: Fixed an off-by-one in MAP-ALLOCATED-OBJECTS that might have caused infinite loops. -
sbcl_1_0_49
34ac026c · ·changes in sbcl-1.0.49 relative to sbcl-1.0.48: * minor incompatible change: WITH-LOCKED-HASH-TABLE no longer disables interrupts for its body. * enhancement: source locations are now available for files loaded as source, compile-time-too evaluation, and initialization files. * enhancement: WITH-COMPILATION-UNIT :SOURCE-NAMESTRING allows providing virtual source-file information, eg. overriding input-file of COMPILE-FILE when a temporary file is used for compilation. * enhancement: ASDF has been updated to version 2.015.3. * enhancement: backtraces involving frames from the default evaluator are more readable. * enhancement: RUN-PROGRAM works with user-defined binary input and output streams. * enhancement: more informative compile-time warnings and runtime errors for type-errors detected at compile-time. * enhancement: deadlock detection for mutexes and spinlocks. * enhancement: dynamic-extent for &rest lists stack allocate only their spines, not their argumets. While portable code should not rely on this, particularly in combination with inlining, it should make dynamic-extent easier to use safely. * enhancement: SB-POSIX improvements: ** WNOHANG and WUNTRACED are exported. ** SYSCALL-ERROR now also provides the name of the failing system call. * enhancement: --script improvements: ** errors on standard input, output, and error streams are handled and cause scripts to exit silently, making them easier to use in shell pipelines. ** backtraces from scripts now go to standard error instead of the terminal even if one is available. ** --script can be an argument, causing the script to be loaded from standard input. * enhancement: MAKE-ALIEN-STRING provides an easy way to transport lisp strings to foreign memory. * enhancement: (SETF GC-LOGFILE) allows logging garbage collections to a file, making it easier to understand heap dynamics. * optimization: using a &REST argument only in APPLY or VALUES-LIST calls allows the compiler to automatically elide rest-list allocation so long as the call sites are in functions that the compiler knows cannot escape. (lp#504575) * optimization: CALL-NEXT-METHOD using explicit arguments is faster, especially in safe code when none of the required arguments have changed their identities. * bug fix: blocking reads from FIFOs created by RUN-PROGRAM were uninterruptible, as well as blocking reads from socket streams created with for which :SERVE-EVENTS NIL. (regression from 1.0.42.43) * bug fix: SET-SYNTAX-FROM-CHAR now removes dispatch-macro character syntax from the to-char if the from-char is not a dispatch-macro character. * bug fix: references to undefined variables in function calls that are optimized away now signal a runtime error. (lp#722734) * bug fix: miscompilation of MULTIPLE-VALUE-CALL when asserting derived types from a function defined in the same file. (regression from 1.0.43.57) * bug fix: TRULY-THE forms are now macroexpandable and setf-expandable. (lp#771673) * bug fix: spurious errors during QUIT when standard streams were closed. -
-
-
-
-
sbcl.1.0.48
bdb254ea · · -
sbcl_1_0_48
bdb254ea · ·changes in sbcl-1.0.48 relative to sbcl-1.0.47: * incompatible change: SB!KERNEL:INSTANCE-LAMBDA, deprecated for over five years, is now no longer supported. * enhancement: read() and write() have been added to SB-POSIX. * enhancement: types of DEFSTRUCT constructors are proclaimed more accurately, allowing better typechecking of call-sites. * enhancement: errors during compile-time-too processing (i.e. EVAL-WHEN) are no longer caught. (reverted to pre 1.0.34 behaviour) * optimization: slightly faster ISQRT. (lp#713343) * bug fix: better support for Solaris /bin/sh in sh-based tests. * bug fix: TRACE behaves better when attempting to trace undefined functions. (lp#740717) * bug fix: missed optimizations for (FUNCALL (LAMBDA ...) ...) in comparison to (FUNCALL #'(LAMBDA ...) ...). * bug fix: ((LAMBDA ...) ...) forms with invalid argument counts resulted in a compile-time error. (lp#720382) * bug fix: forms such as (FUNCALL (FUNCTION NAME OOPS) ...) were compiled without complaints. * bug fix: less verbose source forms for functions from EVAL. (lp#747485) * bug fix: sense of SLOT-BOUNDP-USING-CLASS was inverted in a MAKE-INSTANCE optimization. (regression from 1.0.45.18/1.0.46.15) * bug fix: package locks did not protects against compile-time side-effects of DEFUN. (lp#675584) * bug fix: --dynamic-space-size argument is validated more carefully. (lp#721457) * bug fix: memory fault from printing a malformed simple-condition. (lp#705690) * bug fix: redefining classes so that slot-definition classes change now engages the obsolete instance protocol. (lp#766271) * bug fix: constant improper lists could break source coverage recording. (lp#767959) * bug fix: compiling calls to eg. MEMBER with massive constant list arguments could exhaust stack. -
-
-
sbcl.1.0.47
abd7e18d · ·