sbcl.git
19 years ago0.9.4.22:
Juho Snellman [Wed, 31 Aug 2005 17:34:52 +0000 (17:34 +0000)]
0.9.4.22:
 Oops, should've tested that last commit also on FC4 too.
 Thanks to David Lichteblau for noticing the typo.

19 years ago0.9.4.21:
Juho Snellman [Wed, 31 Aug 2005 17:17:38 +0000 (17:17 +0000)]
0.9.4.21:
Refuse to start a threaded SBCL on a non-NPTL system, since
falling back to the non-threaded mode has been causing mysterious
problems after the pthread merge.

Patch by Peter Van Eynde (sbcl-devel "sbcl with sb-threads not
compatible with 2.4 kernel", 2005-08-12).

19 years ago0.9.4.20:
Gabor Melis [Wed, 31 Aug 2005 15:14:26 +0000 (15:14 +0000)]
0.9.4.20:
  * added trivial implementation of semaphores, not exported for the
    time being

19 years ago0.9.4.19:
Juho Snellman [Wed, 31 Aug 2005 14:52:22 +0000 (14:52 +0000)]
0.9.4.19:
Show foreign function names in LDB stacktraces when
        LISP_FEATURE_OS_PROVIDES_DLADDR.

19 years ago0.9.4.18:
Christophe Rhodes [Wed, 31 Aug 2005 14:43:43 +0000 (14:43 +0000)]
0.9.4.18:
MORE POLICY
... upgrade asdf to upstream HEAD
... make canonicalize-whitespace-1 not touch the file if it
doesn't need touching
... automatically run canonicalize-whitespace as part of make.sh
(this is potentially controversial, as it takes a
non-trivial amount of time, and also potentially
scribbles over files which the unwary developer has
open.  Better, automatic solutions are still being
sought)

19 years ago0.9.4.17:
Juho Snellman [Wed, 31 Aug 2005 14:12:37 +0000 (14:12 +0000)]
0.9.4.17:
Fix a some policy violations that have crept in:
* Canonicalize whitespace
* Change genesis to output C code with canonical whitespace
* Kill some gcc warnings
* Change genesis to explicitly mark large integer literals
  as unsigned

Small test framework change:
* Unexpected successes are reported, but do not cause a failure
  return code for the whole test suite. There are some
  non-deterministic tests that don't always fail.

19 years ago0.9.4.16:
Juho Snellman [Wed, 31 Aug 2005 13:12:17 +0000 (13:12 +0000)]
0.9.4.16:
"I feel safer already".

Add a horrible kludge to work around the new Linux kernel
security features for randomizing memory maps.
* Before setting up the memory maps, check whether we're running
  on 2.6 or newer. If so, check where the ADDR_NO_RANDOMIZE
  personality flag is set. If not, set the flag and re-execute
  the program.
* Follow the /proc/self/exe symlink to find out what binary
  we should be executing. (Can't execute /proc/self/exe
  directly, since some proc-groveling tools will then show
  the name of the process as "exe").
* For more details, see the sbcl-devel threads "Memory randomization
  problems coming" and "memory randomization patch" in 2005-08.

19 years ago0.9.4.15
Rudi Schlatte [Tue, 30 Aug 2005 13:05:30 +0000 (13:05 +0000)]
0.9.4.15
   Fix a rare case of documentation build breakage: if asdf.lisp is
   newer than asdf.fasl, subsequent requires fail since asdf doesn't
   install itself in *module-provider-functions* if loaded from source

19 years ago0.9.4.14:
Gabor Melis [Mon, 29 Aug 2005 14:30:45 +0000 (14:30 +0000)]
0.9.4.14:
  * bug fix: interrupt handlers are now per-process to match
    pthread semantics, RUN-PROGRAM and SB-SPROF do not die
    with 'no handler for signal XX in interrupt_handle_now(..)'
    anymore

19 years ago0.9.4.13
Rudi Schlatte [Mon, 29 Aug 2005 08:56:12 +0000 (08:56 +0000)]
0.9.4.13
    Merge external formats contributed by Ivan Boldyrev

19 years ago0.9.4.12:
Brian Mastenbrook [Sun, 28 Aug 2005 02:26:45 +0000 (02:26 +0000)]
0.9.4.12:
Test fixes:
 * make sure we don't use :darwin when we mean (:and :ppc :darwin)
 * enable a test which passes on Darwin but was previously
   commented out (possibly due to insufficient memory space?)
 * use with-test to turn a floating-point traps test into an
   expected failure on PPC Darwin, where floating-point traps are not
   enabled.

19 years ago0.9.4.11:
Brian Mastenbrook [Sat, 27 Aug 2005 17:14:57 +0000 (17:14 +0000)]
0.9.4.11:
Some alien changes:
 * SAPs are now valid arguments to a callback (thanks to
   Andreas Scholta).
 * Enumeration values can be used more than once in an alien
           enum (thanks to Cyrus Harmon).

19 years ago0.9.4.10:
Juho Snellman [Sat, 27 Aug 2005 09:43:20 +0000 (09:43 +0000)]
0.9.4.10:
* Record BUG: compile-time SYMBOL-PACKAGE-LOCKED-ERROR shouldn't
          be a subclass of error
        * Mark the test that tickles this bug as expected to fail
* Fix typo in the unexpected case of "Unexcepted success"

19 years ago0.9.4.8:
Juho Snellman [Fri, 26 Aug 2005 22:19:12 +0000 (22:19 +0000)]
0.9.4.8:
Add a fallback implementation of SB-ROTATE-BYTE:%UNSIGNED-32-ROTATE-BYTE
        for platforms without the optimized VOPs, that isn't as pessimal as
        the generic %ROTATE-BYTE. About 70x speedup for SB-MD5 on x86-64.

19 years ago0.9.4.8:
Gabor Melis [Fri, 26 Aug 2005 22:16:47 +0000 (22:16 +0000)]
0.9.4.8:
  * put a TLS-INDEX-LOCK and pseudo-atomic around tls index
    allocation to make bind thread and signal safe

19 years ago0.9.4.7:
Christophe Rhodes [Fri, 26 Aug 2005 21:33:08 +0000 (21:33 +0000)]
0.9.4.7:
Commit basically-working ldb backtrace on x86(-64) from David
Lichteblau (http://www.lichteblau.com/backtrace.diff as
announced 2005-08-26 on #lisp)
... unicode symbols not terribly well printed;
... only lightly tested; heuristics probably a bit broken.

19 years ago0.9.4.6:
Juho Snellman [Fri, 26 Aug 2005 21:09:03 +0000 (21:09 +0000)]
0.9.4.6:
Rewrite the test infrastructure to make it a bit more useful, without
        having to make major changes to the test files.

        Move most of run-tests.sh Lisp-side. New features:
        * Don't bail out at first failure (unless running with
          --break-on-failure)
        * Report failed tests at the end of the run
        * Tests can be marked as expected to fail on certain platforms
        * Tests can be named
        * A subset of test files to run can be specified on the command line

        Todo:
        * "Quis custodiet ipsos custodes?". Tests for the test framework.

        Changes to the tests:
        * Remove the explicit quits on success from the impure tests
          (handled by the test framework)
        * Mark some obvious cases as "expected to fail on FOO"

        Other:
        * Remove an (unrelated) fixed BUGS entry

19 years ago0.9.4.5:
Gabor Melis [Fri, 26 Aug 2005 20:30:04 +0000 (20:30 +0000)]
0.9.4.5:
  * in tls use the new widetag no-tls-value-market instead of
    unbound-marker when a symbol has no thread local value

19 years ago0.9.4:
Brian Mastenbrook [Fri, 26 Aug 2005 19:54:17 +0000 (19:54 +0000)]
0.9.4:
     Fix ANSI test ENSURE-GENERIC-FUNCTION.9

19 years ago0.9.4.3:
Gabor Melis [Fri, 26 Aug 2005 19:33:47 +0000 (19:33 +0000)]
0.9.4.3:
  * SIGFPE is not deferrable

19 years ago0.9.4.2:
Gabor Melis [Fri, 26 Aug 2005 19:13:02 +0000 (19:13 +0000)]
0.9.4.2:
  * run with disabled interrupts until the initial thread is started

19 years ago0.9.4.1: thread allocation
Gabor Melis [Fri, 26 Aug 2005 19:01:36 +0000 (19:01 +0000)]
0.9.4.1: thread allocation
  * *CURRENT-THREAD* is now properly unbound (don't do bind_variable
    without unbind), the workaround from 0.9.3.75 is removed
  * also *CURRENT-THREAD* is temporarily bound to nil in the parent
    thread to avoid the child inheriting the value from the parent
    that could unnecessarily keep the parent thread object around
    until the child exited
  * free threads' interrupt_data when necessary
  * made all_threads_lock a mutex instead of a spinlock to speed
    start_the_world up
  * minor cleanups

19 years ago0.9.4:
William Harold Newman [Fri, 26 Aug 2005 18:00:18 +0000 (18:00 +0000)]
0.9.4:
release, tagged as sbcl_0_9_4

19 years ago0.9.3.79:
Nathan Froyd [Fri, 26 Aug 2005 17:52:25 +0000 (17:52 +0000)]
0.9.3.79:
SB-ROTATE-BYTE fix + tests for non-constant shifts on the x86.

19 years ago0.9.3.78:
Brian Mastenbrook [Thu, 25 Aug 2005 12:57:58 +0000 (12:57 +0000)]
0.9.3.78:
Note my own NEWS :-)

19 years ago0.9.3.77:
Nathan Froyd [Wed, 24 Aug 2005 20:57:48 +0000 (20:57 +0000)]
0.9.3.77:
Note NEWS-worthy fixes by Thiemo Seufer.

19 years ago0.9.3.76:
Christophe Rhodes [Wed, 24 Aug 2005 20:49:39 +0000 (20:49 +0000)]
0.9.3.76:
Restore buildability on cmucl
... make the FTYPE declaimed for %DEFKNOWN compatible with
the definition

19 years ago0.9.3.75:
Gabor Melis [Mon, 22 Aug 2005 10:19:44 +0000 (10:19 +0000)]
0.9.3.75:
  * set *CURRENT-THREAD* to NIL on thread exit else it cannot be garbage
    collected

19 years ago0.9.3.74:
Juho Snellman [Sun, 21 Aug 2005 21:47:50 +0000 (21:47 +0000)]
0.9.3.74:
        Sneak in some INSTALL changes during the freeze ("Sssh! Don't
        tell anyone.")

        * Remove the misleading (DISABLE :SB-DOC) example for
          customize-target-features.lisp-expr
        * Add the -R parameter to the suggested memory randomization
          workaround (required as of Fedora Core 4)
        * Document x86-64/Linux and x86/Solaris as supported platforms
        * Add "-noinit" to the suggested command line for building
          with CMUCL as host

19 years ago0.9.3.73:
Juho Snellman [Sun, 21 Aug 2005 14:20:40 +0000 (14:20 +0000)]
0.9.3.73:
Oops, a pure.lisp test was doing (quit :unix-status 104) on success.

19 years ago0.9.3.72: enable linkage tables on Solaris/x86
Brian Mastenbrook [Sat, 20 Aug 2005 19:34:44 +0000 (19:34 +0000)]
0.9.3.72: enable linkage tables on Solaris/x86

19 years ago0.9.3.71:
Christophe Rhodes [Sat, 20 Aug 2005 17:21:14 +0000 (17:21 +0000)]
0.9.3.71:
Alpha build fixes
... unused :node-var node (noted by PVE, introduced 0.9.1.61)
... s/foreign-symbol-address/foreign-symbol-sap/ (introduced
0.9.2.26)
... rearrange the thread object so that structure packing
doesn't confuse the system (introduced 0.9.2.9)

19 years ago0.9.3.70:
Brian Mastenbrook [Sat, 20 Aug 2005 14:55:19 +0000 (14:55 +0000)]
0.9.3.70:
    restore buildability on at least Darwin and FreeBSD
     -- thanks to NIIMI Satoshi

19 years ago0.9.3.69:
Nathan Froyd [Fri, 19 Aug 2005 22:21:02 +0000 (22:21 +0000)]
0.9.3.69:
THS patch-mania (from sbcl-devel, title and date as noted):

* "Fix race condition for initial thread startup", 16 August 2005;
* "Make internal startup functions in thread.c static",
  16 August 2005;
* "Minor MIPS code improvements", 16 August 2005;
* "MIPS C runtime fixes", 19 August 2005
* "Support stack-allocated closures on MIPS", 19 August 2005;
* "Assorted minor (non-)changes", 19 August 2005.

19 years ago0.9.3.68:
Christophe Rhodes [Fri, 19 Aug 2005 21:18:47 +0000 (21:18 +0000)]
0.9.3.68:
Fix a bug introduced in 0.9.3.44 (reported by James Y Knight
sbcl-devel 2005-08-19)
... when a bound is more extreme than
most-frobtive-fooble-float, make an open bound;
... when both thingies are of the same type of float,
safely-binop can proceed regardless (as float-traps
are masked).
... James Y Knight's test case.

19 years ago0.9.3.67:
Gabor Melis [Fri, 19 Aug 2005 19:27:15 +0000 (19:27 +0000)]
0.9.3.67:
  * added chapter "Signal handling" to internals manual
  * added the beginnings of a threading chapter, too

19 years ago0.9.3.66:
Gabor Melis [Fri, 19 Aug 2005 15:14:16 +0000 (15:14 +0000)]
0.9.3.66:
  * handle failed rt signal generation due to full kernel queue, this
    makes INTERRUPT-THREAD and gc_{stop,start}_the_world less deadlock
    prone
  * reduced lock contention related to INTERRUPT-THREAD with a
    beneficial effect on mass extinction of threads by TERMINATE-SESSION:
    in extreme cases it could have taken minutes to shut down a hundred
    threads
  * reduce delay in thread tests to make it run faster and perhaps more
    likely to trigger problems
  * stable on my machine when compiled with gcc4

19 years ago0.9.3.65:
Gabor Melis [Fri, 19 Aug 2005 14:25:29 +0000 (14:25 +0000)]
0.9.3.65:
  * compile runtime without warnings on gcc4 (except for one recently
    acquired warning related to MAGIC_HASH_VECTOR_VALUE in gencgc.c)

19 years ago0.9.3.64:
Gabor Melis [Fri, 19 Aug 2005 13:45:40 +0000 (13:45 +0000)]
0.9.3.64:
  * scavenge thread->interrupt_fun (one less memory fault in
    INTERRUPT-THREAD again, heh)

19 years ago0.9.3.63:
Christophe Rhodes [Fri, 19 Aug 2005 12:15:15 +0000 (12:15 +0000)]
0.9.3.63:
Merge Solaris/x86 support, mostly as in sbcl-devel 2005-06-07
... one or two minor fixups
... log the major problems remaining in BUGS

19 years ago0.9.3.62:
Juho Snellman [Thu, 18 Aug 2005 16:23:08 +0000 (16:23 +0000)]
0.9.3.62:
Fix x86-64 MOVE-ARG-DOUBLE-FLOAT VOP for non-rsp fps (code
        inherited from x86 assumed doubles use two words of stack space,
        which is no longer true for x86-64).

19 years ago0.9.3.61:
Christophe Rhodes [Thu, 18 Aug 2005 10:06:32 +0000 (10:06 +0000)]
0.9.3.61:
Restore alpha/static-fn.lisp, apparently deleted in a dewhitespace
accident.
... also canonize whitespace again.

19 years ago0.9.3.60:
Juho Snellman [Tue, 16 Aug 2005 17:09:49 +0000 (17:09 +0000)]
0.9.3.60:
* Bump +FASL-FILE-VERSION+.
* Add a couple of useful restarts for ENSURE-DIRECTORIES-EXIST.
          (patch from sbcl-devel "Proposed patch to ensure-directories-exist"
          2005-06-06 by Alan Shields)
        * Fix empty hash slot marker on 64-bit systems.
          (patch from sbcl-devel "Bug in hash tables on 64-bit systems and fix"
          2005-08-11 by Lutz Euler)
        * Clear the signal mask in the child process after run-program
          has forked. (patch from sbcl-devel "Blocked signals and run-program"
          2005-08-14 by Benedikt Schmidt).

19 years ago0.9.3.59:
Nathan Froyd [Tue, 16 Aug 2005 15:20:40 +0000 (15:20 +0000)]
0.9.3.59:
Merge THS's "more MIPS arithmetic VOPs", sbcl-devel 16 August 2005.

19 years ago0.9.3.58:
Nathan Froyd [Tue, 16 Aug 2005 15:15:58 +0000 (15:15 +0000)]
0.9.3.58:
Typo fixes:

* Merge THS's "Typo in VOP note", sbcl-devel 16 August 2005;
* Really merge Luis Oliveira's spelling/grammar fix.

19 years ago0.9.3.57:
Christophe Rhodes [Tue, 16 Aug 2005 13:46:59 +0000 (13:46 +0000)]
0.9.3.57:
Fix CALL-NEXT-METHOD.[12] (PFD ansi-tests)
... partly from fix for CMUCL by Gerd Moellmann (sometime in
2003 I think)
... use macroexpansion environment rather than extra compiler
support to determine whether to elide the check.

19 years ago0.9.3.56:
Christophe Rhodes [Tue, 16 Aug 2005 12:40:31 +0000 (12:40 +0000)]
0.9.3.56:
Comment fixes from THS (sbcl-devel 2005-08-16).

19 years ago0.9.3.55:
Christophe Rhodes [Tue, 16 Aug 2005 10:44:40 +0000 (10:44 +0000)]
0.9.3.55:
Fix LET-CONVER[ST]ION confusion.
... also adjust ctor commentary to reflect disappearance of
INSTANCE-LAMBDA.

19 years ago0.9.3.54:
Nathan Froyd [Mon, 15 Aug 2005 22:00:39 +0000 (22:00 +0000)]
0.9.3.54:
        Minor cleanups:

        * INSTALL spelling fix by Luis Oliveira;
        * dependent policy LET-CONVERTION => LET-CONVERSION;
        * Note optimization opportunity in OPTIMIZATIONS.

19 years ago0.9.3.53:
Christophe Rhodes [Mon, 15 Aug 2005 17:56:53 +0000 (17:56 +0000)]
0.9.3.53:
Fix a "bug" (difficult to tell if it's really a bug, but if it
isn't we shouldn't be emitting a CONSTANT-MODIFIED warning on
it) in the ctor MAKE-INSTANCE optimization.
... we can't do `(setf (cdr ',place) ...) any more, so instead
wrap another function around it and close over the
locations.
... test case (related to CLASS-13.1 from PFD ansi-tests).

19 years ago0.9.3.52:
Nathan Froyd [Mon, 15 Aug 2005 17:44:49 +0000 (17:44 +0000)]
0.9.3.52:
        Reduce core file size by 600k+:

        * Disable FORMAT-with-constant-format-string transform in the
          cross compiler--eliminates many large LAMBDAs from the core;
        * Remove call to PURIFY at the beginning of warm init so that
          cold-init-only stuff doesn't get moved to read-only space
          before it is uninterned and (not) garbage collected.

19 years ago0.9.3.51:
Christophe Rhodes [Sat, 13 Aug 2005 16:06:56 +0000 (16:06 +0000)]
0.9.3.51:
Merge a first cut at detecting modification of constants
at compile-time
... new fndb information: :destroyed-constant-args
... convert into an :error combination if we detect
modification (to prevent multiple warnings)
... (I have not fixed the 16 or so warnings from our own
test suite...)

19 years ago0.9.3.50:
Gabor Melis [Fri, 12 Aug 2005 19:19:42 +0000 (19:19 +0000)]
0.9.3.50:
  * put back WITH-PINNED-OBJECTS into INTERRUPT-THREAD and kill some
    really rare memory faults

19 years ago0.9.3.49:
Nathan Froyd [Fri, 12 Aug 2005 19:08:19 +0000 (19:08 +0000)]
0.9.3.49:
Commit Tyler Berry's patch to use syscall(2) instead of _syscall
  on x86 linux (sbcl-devel 11 August 2005).

19 years ago0.9.3.48:
Juho Snellman [Fri, 12 Aug 2005 13:40:48 +0000 (13:40 +0000)]
0.9.3.48:
Don't set the MAP_FIXED flag for mmap on Linux. This allows us
        to give a reasonable error message when the areas we're trying
        to map are already reserved, instead of crashing due to
        overwriting them. (As suggested by James Knight on sbcl-devel,
        2005-08-01).

19 years ago0.9.3.47: "oops" again. I think I'm handing back my commit bit.
Brian Mastenbrook [Fri, 12 Aug 2005 13:20:57 +0000 (13:20 +0000)]
0.9.3.47: "oops" again. I think I'm handing back my commit bit.

19 years ago;;; This is the master value for LISP-IMPLEMENTATION-VERSION. It's
Juho Snellman [Fri, 12 Aug 2005 11:57:24 +0000 (11:57 +0000)]
;;; This is the master value for LISP-IMPLEMENTATION-VERSION. It's
;;; separated into its own file here so that it's easy for
;;; text-munging make-ish or cvs-ish scripts to find and tweak it. For
;;; the convenience of such scripts, only a simple subset of Lisp
;;; reader syntax should be used here: semicolon-delimited comments,
;;; possible blank lines or other whitespace, and a single
;;; double-quoted string value alone on its own line.
;;;
;;; ANSI says LISP-IMPLEMENTATION-VERSION can be NIL "if no
;;; appropriate and relevant result can be produced", but as long as
;;; we control the build, we can always assign an appropriate and
;;; relevant result, so this must be a string, not NIL.
;;;
;;; Conventionally a string like "0.6.6", with three numeric fields,
;;; is used for released versions, and a string like "0.6.5.xyzzy",
;;; with something arbitrary in the fourth field, is used for CVS
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
"0.9.3.47"

19 years ago0.9.3.46: "oops". I didn't mean to write an infinite loop there.
Brian Mastenbrook [Fri, 12 Aug 2005 11:56:13 +0000 (11:56 +0000)]
0.9.3.46: "oops". I didn't mean to write an infinite loop there.

19 years ago0.9.3.45: more ANSI test fixes
Brian Mastenbrook [Fri, 12 Aug 2005 02:37:13 +0000 (02:37 +0000)]
0.9.3.45: more ANSI test fixes

* SUBTYPEP-FUNCTION.(1-4) now pass

* READ-BYTE and WRITE-BYTE no longer take stream designators, just
  streams (fixes READ-BYTE.ERROR.5 and WRITE-BYTE.ERROR.4)

* Found when reading COMPLEX types code, and in ansi-tests as
  MISC.580: (typep #c(1 2) '(and ratio (not fixnum))) -> error

Astute log-watchers will note that the version in the commit message
for my last commit was wrong. When I started that tree it was
0.9.3.41, but somebody else stole that number in the meantime. I fixed
version.lisp-expr, but not my own brain. Oops :-)

19 years ago0.9.3.41: fix three MISC tests where type derivation attempted to
Brian Mastenbrook [Fri, 12 Aug 2005 00:59:07 +0000 (00:59 +0000)]
0.9.3.41: fix three MISC tests where type derivation attempted to
coerce a large bignum to a float, and hopefully fix other potential
similar problems in that area

19 years ago0.9.3.43:
Nathan Froyd [Thu, 11 Aug 2005 15:14:30 +0000 (15:14 +0000)]
0.9.3.43:
INSTALL spelling tweaks from Eduardo Munoz, sbcl-devel
  10 August 2005.

19 years ago0.9.3.42:
Nathan Froyd [Thu, 11 Aug 2005 15:08:39 +0000 (15:08 +0000)]
0.9.3.42:
Apply patch from NIIMI Satoshi (sbcl-devel 11 August 2005) to
  fix issues with FreeBSD (and maybe other BSDs as well).

19 years ago0.9.3.41: gc trigger
Gabor Melis [Thu, 11 Aug 2005 14:44:16 +0000 (14:44 +0000)]
0.9.3.41: gc trigger

  * implementation changes

    The *NEED-TO-COLLECT-GARBAGE* special is gone. A similar - but
    per-thread - special: *GC-PENDING* is here. It is set by both gencgc
    and cheneygc trigger.

    In threaded builds SIG_STOP_FOR_GC is no longer deferrable by the
    normal deferral mechanism and rules. It is only deferred in pseudo
    atomic sections and when *GC-INHIBIT*. There is another
    per-thread special for this purpose: *STOP-FOR-GC-PENDING*.

    Whenever *GC-INHI-BIT* is cleared (either by a GC-ON or when exiting
    a WITHOUT-GCING) the pending gc or the signal handler is run:

      (when (and (not *gc-inhibit*)
                 (or #!+sb-thread *stop-for-gc-pending*
                     *gc-pending*))
        (sb!unix::receive-pending-interrupt))

    On the receiving side interrupt_handle_pending is made clever enough
    not to run pending handlers whose time has not come (i.e. in a
    WITHOUT-INTERRUPTS it only does gc and leaves the pending handlers
    alone).

  * the bugs fixed

    ** WITHOUT-INTERRUPTS no longer blocks gc from the current or other
       threads.

    ** WITHOUT-GCING on the other hand correctly defers gc, be it
       automatically triggered or explicitly called, and SIG_STOP_FOR_GC.

    ** GC-{ON,OFF} now work within WITHOUT-GCING, too

    ** the gc trigger is more reliable as it does not share the
       interrupt deferral mechanism, most notably sb-sprof does not make
       triggering gc any harder

19 years ago0.9.3.40:
Gabor Melis [Thu, 11 Aug 2005 13:35:16 +0000 (13:35 +0000)]
0.9.3.40:
  * declare thread state volatile to avoid locking up when compiled
    with gcc4

19 years ago0.9.3.39: TYPE-ERROR fun
Brian Mastenbrook [Thu, 11 Aug 2005 01:07:44 +0000 (01:07 +0000)]
0.9.3.39: TYPE-ERROR fun

* Fix an obvious FIXME involving the expected type in a type error
  thrown by MAP when the passed type specifier is not a subtype of
  LIST or VECTOR. The expected-type cell was previously SEQUENCE, and
  it's very likely that a type specifier is of that type :-)

* DISASSEMBLE should throw a TYPE-ERROR when the argument does not
  name a function, not a SIMPLE-ERROR.

19 years ago0.9.3.38: further fixes to ENCODE- and DECODE-UNIVERSAL-TIME:
Brian Mastenbrook [Thu, 11 Aug 2005 00:13:28 +0000 (00:13 +0000)]
0.9.3.38: further fixes to ENCODE- and DECODE-UNIVERSAL-TIME:
* DECODE-UNIVERSAL-TIME now calls out to UNIX time functions to obtain
  daylight savings time and timezone information for the entire range
  of 32-bit time_t, and when below that calls with a plausable date in
  1903.
* ENCODE-UNIVERSAL-TIME now no longer errors when passed a decoded
  time with a year in 1899, so long as the encoded time is
  non-negative.

19 years ago0.9.3.37:
Christophe Rhodes [Wed, 10 Aug 2005 15:10:18 +0000 (15:10 +0000)]
0.9.3.37:
Fix a pair of bugs relating to cons types, noted by Brian
Mastenbrook (chandler on #lisp) in paste
http://paste.lisp.org/display/10664
... named :complex-=/:complex-subtypep needs to realise that
CONS types can be *EMPTY-TYPE* (but no other type)
in disguise;
... cons :simple-subtypep was just plain wrong when computing
its certainty value.

19 years ago0.9.3.36:
Christophe Rhodes [Wed, 10 Aug 2005 07:57:33 +0000 (07:57 +0000)]
0.9.3.36:
Fix bug reported by Nicholas Neuss (c.l.l, 2005-06-07,
"ANSI question")
... confusion between whitespace[1] and whitespace[2], now
deconfused and made explicit.
... tests of PARSE-INTEGER (whitespace[1]) and PEEK-CHAR T
(whitespace[2])

19 years ago0.9.3.35: minor thread changes
Gabor Melis [Tue, 9 Aug 2005 15:05:46 +0000 (15:05 +0000)]
0.9.3.35: minor thread changes
  * reverted: thread state synchronization change in gc_start_the_world
    that did nothing but slowed things down
  * reverted: set the thread state to dead in C when things are really
    over not in lisp when more allocation can happen and confuse gc
  * gc_stop_the_world: yield the cpu when waiting for a thread to
    suspend

19 years ago0.9.3.34: cosmetics
Gabor Melis [Tue, 9 Aug 2005 13:57:46 +0000 (13:57 +0000)]
0.9.3.34: cosmetics
  * move FSHOW_SIGNAL to runtime.h
  * print os_thread_t with %lu
  * recanonicalize whitespace (offenders: crhodes, jsnell, pfdietz and
    me (but I was handed a tainted patch by crhodes, honest))

19 years ago0.9.3.33
Paul F. Dietz [Sat, 6 Aug 2005 15:24:19 +0000 (15:24 +0000)]
0.9.3.33
      Add source transform for GET to eliminate hairy arg processing overhead.
      Cache CLASS-INFO-OR-LOSE using the property list of the class name.
       speeding up the function by a factor of about 3.

19 years ago0.9.3.32:
Christophe Rhodes [Sat, 6 Aug 2005 11:31:08 +0000 (11:31 +0000)]
0.9.3.32:
Fix bug 343: No more need for INSTANCE-LAMBDA.  What happened
to four-line patches?
... port to all architectures;
... remove use of INSTANCE-LAMBDA from pcl;
... give a deprecation warning for uses of INSTANCE-LAMBDA;
... write long explanatory comment;
... add test cases.

19 years ago0.9.3.31:
Christophe Rhodes [Fri, 5 Aug 2005 21:14:32 +0000 (21:14 +0000)]
0.9.3.31:
finish output from trace at every applicable point; don't rely
on the output stream being line buffered...
... should make tracing in slime a bit more pleasant.

19 years ago0.9.3.30:
Paul F. Dietz [Fri, 5 Aug 2005 13:32:14 +0000 (13:32 +0000)]
0.9.3.30:
  Cache the previous key used to access a hash table.  If the next key
  is EQ to the cached key (if any), we can avoid computing the hash
  function and performing a full lookup.  This speeds up the common
  retrieve/update/store idiom on hash table places.

19 years ago0.9.3.29:
Paul F. Dietz [Fri, 5 Aug 2005 03:28:30 +0000 (03:28 +0000)]
0.9.3.29:
  Add source transforms to eliminate hairy arg processing in GETHASH.

19 years ago0.9.3.28: bdowning's fd-stream patch, slightly modified
Gabor Melis [Thu, 4 Aug 2005 13:05:30 +0000 (13:05 +0000)]
0.9.3.28: bdowning's fd-stream patch, slightly modified
  * *AVAILABLE-BUFFERS* is now shared between threads to avoid
    leaking 8192 bytes per stream created in one thread but
    written to in another
  * killed two warnings introduced in purify.c

19 years ago0.9.3.27
Gabor Melis [Thu, 4 Aug 2005 12:48:20 +0000 (12:48 +0000)]
0.9.3.27
  * don't use stdint.h as solaris 9 and freebsd 4 object
  * killed two warnings introduced in purify.c

19 years ago0.9.3.26:
Christophe Rhodes [Thu, 4 Aug 2005 09:31:42 +0000 (09:31 +0000)]
0.9.3.26:
Fix package locks / vops interaction (Zach Beane sbcl-devel
2005-07-24)
... just WITHOUT-PACKAGE-LOCKS.

19 years ago0.9.3.25
Gabor Melis [Thu, 4 Aug 2005 09:06:25 +0000 (09:06 +0000)]
0.9.3.25
  * bug fix: release-foreground doesn't choke on session lock if
   there is only one thread in the session

19 years ago0.9.3.24:
Christophe Rhodes [Wed, 3 Aug 2005 14:32:06 +0000 (14:32 +0000)]
0.9.3.24:
Make complex type operations a little less painfully slow, by
removing the through-symbol indirection in !invoke-type-method.

19 years ago0.9.3.23:
Juho Snellman [Wed, 3 Aug 2005 14:24:00 +0000 (14:24 +0000)]
0.9.3.23:
        Merge sbcl-manual-dash-fix.patch from sbcl-devel "Re: patches
        from debian" by Peter Van Eynde, 2005-06-16.

19 years ago0.9.3.22:
Juho Snellman [Wed, 3 Aug 2005 13:05:07 +0000 (13:05 +0000)]
0.9.3.22:
Merge sbcl-devel "Crash in purify" by James Knight, 2005-08-01

19 years ago0.9.3.21:
Juho Snellman [Wed, 3 Aug 2005 13:02:40 +0000 (13:02 +0000)]
0.9.3.21:
Merge sbcl-devel "patch: treatment of default external format"
        by NIIMI Satoshi, 2005-06-12

19 years ago0.9.3.20:
Juho Snellman [Wed, 3 Aug 2005 11:36:42 +0000 (11:36 +0000)]
0.9.3.20:
Merge sbcl-devel "Patch: non-escaped pathname printing" by Kevin Reid

19 years ago0.9.3.19:
Paul F. Dietz [Wed, 3 Aug 2005 01:44:41 +0000 (01:44 +0000)]
0.9.3.19:
  The LAST source transform appears to have slowed down STRING-CONCAT,
  so change it to a call to a specialized function rather than fully
  inlining it.

19 years ago0.9.3.18:
Alexey Dejneka [Tue, 2 Aug 2005 18:11:14 +0000 (18:11 +0000)]
0.9.3.18:
        * DEFINE-UNIBYTE-MAPPER defines correct externalization
          routine for encodings, swapping 8-bit codes.

19 years ago0.9.3.17
Gabor Melis [Tue, 2 Aug 2005 15:56:43 +0000 (15:56 +0000)]
0.9.3.17
  * zero warning runtime on x86-linux and gcc 3.4

19 years ago0.9.3.16:
Paul F. Dietz [Tue, 2 Aug 2005 13:52:37 +0000 (13:52 +0000)]
0.9.3.16:
  Add source transform for (last x).
  Change nconc back to use last (which will be optimized with the
   source transform.)

19 years ago0.9.3.15: debugger streams
Gabor Melis [Mon, 1 Aug 2005 13:20:48 +0000 (13:20 +0000)]
0.9.3.15: debugger streams
  * flush all standard streams before prompting in the REPL and the
    debugger
  * prompt for restart goes to *debug-io*
  * disable-debugger, enable-debugger don't set *debug-io* anymore
  * run *invoke-debugger-hook* before *debugger-hook* => if the debugger
    is disabled then *debugger-hook* is not run
  * eof selects abort in the debugger

19 years ago0.9.3.15: debugger streams
Gabor Melis [Mon, 1 Aug 2005 12:54:02 +0000 (12:54 +0000)]
0.9.3.15: debugger streams
  * flush all standard streams before prompting in the REPL and the
    debugger
  * prompt for restart goes to *debug-io*
  * disable-debugger, enable-debugger don't set *debug-io* anymore
  * run *invoke-debugger-hook* before *debugger-hook* => if the debugger
    is disabled then *debugger-hook* is not run
  * eof selects abort in the debugger

19 years ago0.9.3.14: debugger streams
Gabor Melis [Mon, 1 Aug 2005 12:52:24 +0000 (12:52 +0000)]
0.9.3.14: debugger streams
  * flush all standard streams before prompting in the REPL and the
    debugger
  * prompt for restart goes to *debug-io*
  * disable-debugger, enable-debugger don't set *debug-io* anymore
  * run *invoke-debugger-hook* before *debugger-hook* => if the debugger
    is disabled then *debugger-hook* is not run
  * eof selects abort in the debugger

19 years ago0.9.3.14:
Christophe Rhodes [Mon, 1 Aug 2005 10:14:05 +0000 (10:14 +0000)]
0.9.3.14:
Fix bug reported by Bruno Haible sbcl-devel 2004-08-02
("standard method-combination ignores overridden
          compute-applicable-methods")
... woohoo!  Less than a year between report and fix :-)
... be more careful about assuming that we know the precedence
order of methods when computing a discriminating net
for a DISPATCH-DFUN.
... (NB: this is not quite the same patch as I sent to
sbcl-devel 2005-07-29: the dispatch dfun can cope with
unsorted methods, so exploit that instead.)
... only one test case is currently running; when the bug
related to instances of two user-defined generic
function classes is fixed, the second test case can run
as well.

19 years ago0.9.3.13:
Paul F. Dietz [Mon, 1 Aug 2005 04:23:41 +0000 (04:23 +0000)]
0.9.3.13:
 -- Make list-remove-duplicates use a hash table only if the number
    of items to traverse is more than 20.
 -- Add special case routine LAST1 (equivalent to single argument
   call to LAST) and have NCONC call this instead of the general
   function.
 -- Add a special two-argument form of NCONC, called NCONC2. TODO:
    add a source transform to call this.

19 years ago0.9.3.12:
Paul F. Dietz [Sun, 31 Jul 2005 13:34:48 +0000 (13:34 +0000)]
0.9.3.12:
   Improved the algorithm for intersecting character set types.
   It now runs in linear rather than quadratic time.

19 years ago0.9.3.11:
Paul F. Dietz [Sat, 30 Jul 2005 13:10:46 +0000 (13:10 +0000)]
0.9.3.11:
   Convert inadvertent tabs into spaces in source code.

19 years ago0.9.3.10:
Alexey Dejneka [Fri, 29 Jul 2005 17:34:26 +0000 (17:34 +0000)]
0.9.3.10:
        Bug in ~F.

19 years ago0.9.3.9:
Christophe Rhodes [Thu, 28 Jul 2005 21:08:41 +0000 (21:08 +0000)]
0.9.3.9:
Fix PFD "Setting + in the REPL when the form being evaluated aborts"
sbcl-devel 2004-12-12
... PFD's interpretation is both the most obvious and the most
useful (if three history variables is "useful"), but not
widely subscribed to.  Let's see if SBCL can act as social
pressure!
(Also largely cosmetic updates to package-lock documentation)

19 years ago0.9.3.8:
Christophe Rhodes [Thu, 28 Jul 2005 14:23:25 +0000 (14:23 +0000)]
0.9.3.8:
Merge "Fix mips assembly to handle GCed registers right" (THS
sbcl-devel 2005-07-08)

19 years ago0.9.3.7:
Christophe Rhodes [Thu, 28 Jul 2005 14:03:15 +0000 (14:03 +0000)]
0.9.3.7:
Merge "Extend address spaces on mips" (THS sbcl-devel 2005-07-15)

19 years ago0.9.3.6:
Christophe Rhodes [Thu, 28 Jul 2005 13:47:32 +0000 (13:47 +0000)]
0.9.3.6:
merge "Fix mips inst syscall definition" (THS sbcl-devel 2005-07-15)