Tags give the ability to mark specific points in history as being important
-
-
-
sbcl.1.0.39
7d4ee7ce · · -
sbcl_1_0_39
7d4ee7ce · ·changes in sbcl-1.0.39 relative to sbcl-1.0.38: * bug fix: Backtrace from undefined function on x86 and x86-64 now show the calling frame. * bug fix: linkage-table entries on PPC now no longer overflow their space allocation (potentially causing crashes if they are written out of order). * bug fix: Scrub control stack after scavenging in gencgc on non-x86oid platforms, preventing the GC from seeing stale pointers on the control stack in subsequent GCs (which would, and does, break invariants). * bug fix: 32-bit unicode external formats now work on big-endian systems. * bug fix: Literal characters with code points greater than about 32767 now work on PPC UNICODE builds. * bug fix: Any noise left by SSE operations (sqrt and conversions) in the high order bits are explicitly cleared out. In some contrived situations, this could lead to wrong results in mixed real/complex float arithmetic. * bug fix: Fix function/macro redefinition warnings when building with clisp. (lp#576787, thanks to Josh Elsasser) * new platform: experimental support for ppc/openbsd (thanks to Josh Elsasser). * bug fix: Floating-point traps now work on ppc/linux. -
sbcl.1.0.38
4400b14f · · -
sbcl_1_0_38
4400b14f · ·changes in sbcl-1.0.38 relative to sbcl-1.0.37: * incompatible change: Thread names are now restricted to SIMPLE-STRINGs like for any other thread-related datastructure, MUTEX, etc. (lp#547095) * deprecation: the SB-QUEUE contrib was merged into the SB-CONCURRENCY contrib module. New code should depend on SB-CONCURRENCY, not SB-QUEUE. * deprecation: SB-THEAD:GET-MUTEX was deprecated in favor of SB-THREAD:GRAB-MUTEX. * new contributed module: SB-CONCURRENCY is a new contrib; it's supposed to contain additional data structures and tools for concurrent programming; at the moment it contains a lock-free queue, and a lock-free mailbox implementation. * new feature: added SB-THREAD:GRAB-MUTEX; it's like the now deprecated GET-MUTEX but takes &key rather than &optional parameters. Also added :TIMEOUT argument to GRAB-MUTEX on non-sb-lutex platforms like Linux and BSD. * new feature: added SB-THREAD:TRY-SEMAPHORE, a non-blocking variant of SB-THREAD:WAIT-ON-SEMAPHORE. * new feature: SB-EXT:ATOMIC-DECF has been added as a companion to SB-EXT:ATOMIC-INCF. * new feature: a CANCEL-DEADLINE is associated with DEADLINE-TIMEOUT conditions to defer the deadline for forever. * enhancement: *STANDARD-OUTPUT*, *STANDARD-INPUT*, and *ERROR-OUTPUT* are now bivalent. * enhancement: errors from NO-APPLICABLE-METHOD and NO-PRIMARY-METHOD now have a RETRY restart available to retry the generic function call. * enhancement: SB-BSD-SOCKET improvements ** sockets and socket streams now have a more informative printed representation based on the corresponding SOCKET-NAME and SOCKET-PEERNAME. ** SOCKET-MAKE-STREAM once more supports the :AUTO-CLOSE option. (lp#540413) ** SOCKET-CLOSE now accepts :ABORT argument, which is passed on to CL:CLOSE when appropriate, and no longer disassociates the stream from the socket if close failed. (lp#543951) * improvements to the instrumenting profiler ** new feature: report per-function GC overhead. (thanks to John Fremlin) ** optimization: counters no longer use locks for the overflow mode. ** bug fix: whenever a profiling counter wrapped into overflow mode, it incurred an off-by-one miscount. * enhancement: improved MAKE-HASH-TABLE documentation (lp#543473) * enhancement: improved DEFMETHOD pretty-printing. * enhancement: perform range reduction when arguments are too large for x87's transcendentals (instead of returning 0). (lp#327192) * enhancement: eliminate some spurious TYPE-WARNINGs. Should help with some of CL-PPCRE's macros. (lp#570079) * enhancement: our machine code is slightly less hostile to valgrind on x86-64. * enhancement: up-to-date versions of NetBSD-current are supported. (Thanks to Robert Swindells and Aleksej Saushev) * bug fix: correct restart text for the continuable error in MAKE-PACKAGE. * bug fix: a rare case of startup-time page table corruption. * bug fix: a semaphore with multiple waiters and some of them unwinding due to timeouts could be left in an inconsistent state. * bug fix: fix typo in "Reporting Bugs" section of the manual (lp#520366) * bug fix: misoptimization of multiplication by one in (SB-C::FLOAT-ACCURACY 0) policies. * bug fix: miscounts in SB-PROFILE. * bug fix: Fix lost wakeup bug between SB-THREAD:CONDITION-WAIT and CONDITION-NOTIFY on Linux. See threads "lost wakeup in condition-wait / condition-notify" (Feb 2010) and "Condition-Wait, Deadline handler, waking up itself" (March 2010) for further details. * bug fix: allow forward FIND and POSITION on lists to elide checking :END against length of the list if the element is found before the specified END is reached. (thanks to Alec Berryman, lp#554385) * bug fix: errors signalled during package graph modification no longer block FIND-SYMBOL and FIND-PACKAGE in other threads. (lp#511072) * bug fix: SB-POSIX build was broken when SBCL was compiled without the :SB-DOC feature. (lp#552564) * bug fix: SB-INTROSPECT build issues on GENGC/PPC. (lp#490490) * bug fix: more robust runtime executable path detection. (lp#375549) * bug fix: GCD always returns positive values. (lp#413680) * bug fix: Converting division to multiplication by reciprocal handles denormals. * bug fix: We were too eager in eliding range reduction tests on x87. The maximal magnitude is 2^63, not 2^64. * bug fix: Transforms for TRUNCATE don't die when the result is completely ignored anymore. * bug fix: Maybe restore buildability on Alpha. * bug fix: READ-BYTE isn't inline anymore, fixing weird streams failures. (lp#569404) * bug fix: RANDOM-STATE can be printed readably again. * bug fix: Unreadable objects were sometimes printed like #<\nFoo>. * bug fix: Using EQL with non-constant values of constant type (e.g. EQL types) could result in type mismatches during compilation. -
sbcl.1.0.37
86c91167 · · -
sbcl_1_0_37
86c91167 · ·changes in sbcl-1.0.37 relative to sbcl-1.0.36: * enhancement: Backtrace from THROW to uncaught tag on x86oids now shows stack frame thrown from. * enhancement: WITH-COMPILATION-UNIT :POLICY allows restricting changes to compiler optimization qualities inside dynamic extent of its body. * enhancement: LOAD-LOGICAL-PATHNAME-TRANSLATIONS can be used to load translations from SYS:SITE;<HOST>.TRANSLATIONS.NEWEST (thanks to Michael Weber) * optimization: SLOT-VALUE and (SETF SLOT-VALUE) take advantage of constraint propgation, allowing better compilation eg. when used to access structures with WITH-SLOTS. (lp#520366) * optimization: the compiler is now more aware of the type of the underlying storage vector for multidimensional simple arrays resulting in better code for accessing such arrays. * optimization: passing NIL as the environment argument to TYPEP no longer inhibits optimizing it. (lp#309788) * optimization: more efficient register usage when handling single-float arguments on x86-64. (thanks to Lutz Euler) * optimization: ADJUST-ARRAY and STABLE-SORT on vectors no longer use pre-allocated temporary vectors. (lp#496249) * bug fix: Fix compiler error involving MAKE-ARRAY and IF forms in :INITIAL-CONTENTS. (lp#523612) * bug fix: FUNCTION-LAMBDA-EXPRESSION lost declarations from interpreted functions. (lp#524707) * bug fix: bogus style warnings from certain (SETF SLOT-VALUE) and WITH-SLOTS usages during compilation. * bug fix: SB-C::CLASS-INFO now prints correctly. (lp#514762) * enhancement: Can now build with ud2 instead of int3 as trap instruction on all x86oid platforms with :UD2-BREAKPOINTS target feature. * bug fix: Breakpoints now work when using ud2 instead of int3 as trap instruction (tested on x86oid linux with ud2-breakpoints). * bug fix: slam.sh now works on win32. * bug fix: better differences of numeric types. (lp#309124) * bug fix: arrays declared intersection and union types can have their upgraded element type derived. (lp#316078) * bug fix: SB-SPROF allocation profiling for all threads failed to profile threads started during profiling. (lp#472499) * bug fix: SB-INTROSPECT test failure when building without SB-EVAL feature. (lp#535658) * bug fix: SB-CLTL2:DECLARATION-INFORMATION did not take SB-EXT:RESTRICT-COMPILER-POLICY into account. (lp#313337) * bug fix: Comma inside a backquoted array or structure resulted in nonsense values instead of signaling an error. (lp#309093) * bug fix: Spurious unused variable warning in a DEFSTRUCT edge case. (lp#528807) * bug fix: More consistent warnings and notes for ignored DYNAMIC-EXTENT declarations (lp#497321) * bug fix: FIND and POSITION on lists did not check sequence bounds properly and failed to detect circular lists (lp#452008) * bug fix: leakage from ~/.asdf-install into the ASDf-INSTALL contrib build (lp#538974) * bug fix: LOOP OF-TYPE VECTOR compile-time error. (lp#540186) * bug fix: SIGNAL SB-SYS:INTERACTIVE-INTERRUPT before entering the debugger due to it, so that handlers can run. * bug fix: reparsing undefined types if they have become defined since parsing. (lp#309128) * bug fix: missing &REST type in a proclamation for a function with both &REST and &KEY in lambda-list caused miscompilation (lp#458354) * bug fix: WHO-CALLS information for source-transformed and compiler-macro expanded calls (lp#542174) * bug fix: more accurate WHO-MACROEXPANDS information; point into rather than just at toplevel form. -
sbcl.1.0.36
411f4807 · · -
sbcl_1_0_36
411f4807 · ·changes in sbcl-1.0.36 relative to sbcl-1.0.35: * new feature: SB-EXT:TYPEXPAND-1, SB-EXT:TYPEXPAND, and SB-EXT:TYPEXPAND-ALL behave exactly like their MACROEXPAND counterparts but work on type specifiers. * new feature: SB-EXT:DEFINED-TYPE-NAME-P returns whether a symbol is known to name a type specifier. * new feature: SB-EXT:VALID-TYPE-SPECIFIER-P returns whether a given type specifier is valid where "valid" basically means "would be accepted as second argument of TYPEP". * new feature: SB-INTROSPECT:FUNCTION-TYPE takes a function-designator and returns the function's declared, or derived FTYPE. * new feature: SB-POSIX now supports accessing the d_ino member of dirent structures. (Thanks to Philipp Marek and Pierre THEIRRY) * new feature: The function SB-EXT:SEED-RANDOM-STATE has been added to provide for seeding a RANDOM-STATE object with user-provided data or from the operating system's PRNG. Also, (MAKE-RANDOM-STATE T) will attempt to initialize the returned state from the operating system's PRNG where possible. (Thanks to Fare Rideau; launchpad bug lp#310116) * bug fix: Fix SB-SIMPLE-STREAMS:READ-VECTOR to correctly set the FILE-POSITION of the stream being read from. (launchpad bug lp#491087) * bug fix: Fix grammar and style issues for the docstrings of printer-related variables and functions. (Thanks to mon_key; launchpad bug lp#518696) * bug fix: Fix compilation on chenygc platforms. Thanks to Larry Valkama and Bruce O'Neel. * bug fix: SB-THREAD:CONDITION-WAIT sometimes signaled a deadline twice in a row even though a handler defered the deadline long into the future. (lp#512914) * bug fix: A deadline handler was run without interrupts enabled for a deadline signaled within SB-THREAD:CONDITION-WAIT. That could result in infinitely spinning, non-killable threads. * bug fix: Backtrace from internal-errors on x86-64 os x was truncated before reaching the erring stack frame. * bug fix: Fix type derivation for EXPT when raising a fixnum to a real power. (launchpad bug lp#525949) * bug fix: Fix SB-EXT:GENERATION-* accessors for generations > 0 on GENCGC platforms. (launchpad bug lp#529014) * bug fix: More robust checks for invalid DEFMETHOD argument specializers. (launchpad bug lp#525916) * bug fix: Fix building on Darwin when sysctl is not in the user's PATH. (Thanks to Robert Goldman) -
sbcl.1.0.35
3f329858 · · -
sbcl_1_0_35
3f329858 · ·changes in sbcl-1.0.35 relative to sbcl-1.0.34: * optimization: ROUND with a single single-float or double-float argument is properly inlined when possible. * optimization: Slightly better code is generated for integer<->float conversions and for single-float<->double-float conversions on x86-64. * optimization: SB-ROTATE-BYTE:ROTATE-BYTE now generates more efficient code for 32-bit and 64-bit rotations on x86-64. * bug fix: The install script changes the ownership of directories as well as files for contrib modules using asdf. (thanks to Eugene Ossintsev; launchpad bug lp#508485) * bug fix: TRUNCATE with a single single-float or double-float argument is properly inlined when possible. (launchpad bug lp#489388) * bug fix: Passing a rotation count of zero to SB-ROTATE-BYTE:ROTATE-BYTE no longer causes a compiler error on x86 and ppc. * bug fix: GET-MACRO-CHARACTER bogusly computed its second return value always relative to *READTABLE* rather than the passed argument. -
sbcl.1.0.34
67fb768d · · -
sbcl_1_0_34
67fb768d · ·changes in sbcl-1.0.34 relative to sbcl-1.0.33: * minor incompatible change: threading support is now enabled by default on x86[-64] Linux. * enhancement: SB-INTROSPECT:DEFTYPE-LAMBDA-LIST now also works on most builtin types. * enhancement: Errors during compile-time-too processing (i.e. EVAL-WHEN) are now caught and reported just like errors during macroexpansion. * enhancement: SB-POSIX now provides access to tcdrain(), tcflow(), tcflush(), tcgetsid(), and tcsendbreak(). (thanks to Jerry James) * enhancement: ASDF systems can now depends on SB-QUEUE. * fixes and improvements related to Unicode and external formats: ** bug fix: error handling and restart usage in the ucs-2 external format has been improved. ** there is now an implementation of the ucs-4 external format. ** the utf-16 and utf-32 external formats are supported. * bug fix: SB-POSIX wrapper for putenv no longer tries to put lisp strings in the environment. setenv() and unsetenv() are also provided. (reported by Fare Rideau; launchpad bug lp#460455) * bug fix: LOAD of both .fasl and .FASL type files now forces fasl-style loading. This ensures sensible errors for .FASL files from other implementations on case-insensitive filesystems. (reported by Willem Broekema; launchpad bug lp#489417) * bug fix: #p"\\\\" can now be read without error on Win32. (reported by Willem Broekema; launchpad bug lp#489698). * bug fix: some minor code rearrangements to reenable warning-free building from CMUCL (reported by xme@gmx.net; launchpad bug lp#491104) * bug fix: PRINT-OBJECT for clos instances respects the right margin when pretty printing * bug fix: FIND-PACKAGE & DEFPACKAGE were not thread safe. (reported by Attila Lendvai) -
sbcl.1.0.33
0593a8eb · · -
sbcl_1_0_33
0593a8eb · ·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
143578d5 · · -
sbcl_1_0_32
143578d5 · ·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) -
-
sbcl.1.0.31
4afe2bbc · ·