Commits on Sep 27, 2005
  1. 0.9.5:

    	release, tagged as sbcl_0_9_5
    William Harold Newman committed Sep 27, 2005
Commits on Sep 24, 2005

    	Mostly revert, since it doesn't compile at all on modern
            Linux systems (see sbcl-devel message by "Dave" on 2005-09-23):
            * The decision of whether to use personality() should be completely
              a run-time property, not a compile-time one.
            * Change LISP_FEATURE_LINUX cpp conditionals back to LISP_FEATURE_X86
              or remove them entirely (this is in linux-os.c, so LISP_FEATURE_LINUX
              had better be defined; randomization is only enabled on x86 so
              it's pointless to include the code on other platforms)
            * To solve the problem that was trying to address
              (no <sys/personality.h> on versions of glibc more than three years
              old) define the prototype of personality() in linux-os.c. This
              might not be the optimal solution, but I suppose this isn't the
              right time to experiment...
            The syscall itself is old (goes at least back to kernel 2.0),
            so the system call wrapper should exist even on old versions
            of libc. There should thus be no problems with linking this
            code even on ancient systems.
    jsnell committed Sep 24, 2005
Commits on Sep 21, 2005

    	suppressed <sys/personality.h> stuff for old Linux systems (like
    		one of mine) which don't have it
    	(Assuming that I didn't make some weird clerical error, the changes
    		are smaller than they look; I added some extra braces
    		and let emacs regularize the indentation in hopes that
    		it would make it less likely for me to mess up the
    		nesting of if() and #if.)
    William Harold Newman committed Sep 21, 2005

    	Pacify the compiler when inlining LAST1's code in a high-speed
    	low-space compilation environment.
    	... rebind the argument within last1 so that the assignments
    		are to that binding.
    csrhodes committed Sep 21, 2005
Commits on Sep 20, 2005

    	The final piece to fix bug #379 for mips.
    Thiemo Seufer committed Sep 20, 2005

    	More mips branch delay slot fixes, and a step forward to a
    	working singlestepper.
    Thiemo Seufer committed Sep 20, 2005

    	Fix one more bad break insn for mips.
    Thiemo Seufer committed Sep 20, 2005

    	Don't call alloc_sap before fake_foreign_function_call is run,
    	because this will reset dynamic_space_free_pointer to the
    	original reg_ALLOC value from the signal context, so the next
    	(Lisp-side) allocation will overwrite the SAP object. This may
    	fix Bug #379 (at least partially).
    Thiemo Seufer committed Sep 20, 2005
Commits on Sep 19, 2005

    	Delete some really really stale bugs from the manual page
    	... also add some formatting directives which make postscript
    		output a bit nicer.
    csrhodes committed Sep 19, 2005

    	Update fasl file version
    	... also expand a little on metaobject protocol
    csrhodes committed Sep 19, 2005

      * WITH-TIMEOUT doesn't signal a timeout if the timeout is zero for
       backward compatibility reasons (i.e. not to break CLX). When unsafe
       unwinds are dealt with this may be revisited.
      * suggestions from whitespace-o'matic
    Gabor Melis committed Sep 19, 2005
Commits on Sep 18, 2005

    	Remove one more AMOP incompatibility
    		be different from the method on STANDARD-CLASS.
    csrhodes committed Sep 18, 2005

            * Don't optimize two-argument BACKQ-LIST* to BACKQ-CONS when
              the first argument may be expanded later (fixes a bug
              reported on cll by Alexander <malishev>).
    Alexey Dejneka committed Sep 18, 2005
Commits on Sep 17, 2005

            * PACK does not modify a hashtable, which it iterates on
              (patch by Rob MacLachlan for a bug reported by Bryan
    Alexey Dejneka committed Sep 17, 2005
Commits on Sep 16, 2005

    	Robustify the build system scripts.
    Thiemo Seufer committed Sep 16, 2005

    	Fix disassembly printing for mips break instructions.
    Thiemo Seufer committed Sep 16, 2005
Commits on Sep 15, 2005

    	Use subcodes of mips break instructions with a major code of 0,
    	for triggering SIGTRAP, since other major codes are reserved
    	for various purposes (Code 0 is supposed to be used for the
    Thiemo Seufer committed Sep 15, 2005

    	Fix Bugs #346/#353 for mips.
    Thiemo Seufer committed Sep 15, 2005
Commits on Sep 13, 2005

    	Some more use of preinitialized sigset_t. Minor code cleanup.
    Thiemo Seufer committed Sep 13, 2005
Commits on Sep 12, 2005

    	Use snarf-error-junk as the only lisp function to parse internal
    	error arguments. Improve comment.
    Thiemo Seufer committed Sep 12, 2005

    	Whitespace painting.
    Thiemo Seufer committed Sep 12, 2005

    	Add missing definitions for object-not-list-trap,
    	object-not-instance-trap, peudo-atomic-trap.
    Thiemo Seufer committed Sep 12, 2005

    	Handle also for branch delay slot of newer mips instructions,
    	reduce copy&pasteage, remove SIGILL handler which was only good
    	for debugging.
    Thiemo Seufer committed Sep 12, 2005

    	Improve signal handling performance a bit by using sigfillset,
    	removing redundant check_blockables_blocked_or_lose calls, and
    	copying pre-initialized sigset_t where possible.
    Thiemo Seufer committed Sep 12, 2005

    	Less copy&paste code.
    Thiemo Seufer committed Sep 12, 2005

            * s/vrotaru/Vasile Rotaru/
    Alexey Dejneka committed Sep 12, 2005
Commits on Sep 11, 2005

    	Define LONG-LONG/UNSIGNED-LONG-LONG as 64bit integer alien
    	types and use them for the mips port.
    Thiemo Seufer committed Sep 11, 2005

            * Fix compiler failure reported by vrotaru on sbcl-help: the
              main pass of physical environment analysis clears closure
              information made by the prepass.
    Alexey Dejneka committed Sep 11, 2005
Commits on Sep 10, 2005

    	* Fix problem where TYPEP in compiled code could return a
              true-or-false answer on a bad literal type specifier.
    Brian Mastenbrook committed Sep 10, 2005
Commits on Sep 9, 2005

    	Implement the METAOBJECT class as per AMOP.
    	... we can do this safely now that INSTANCE and
    		FUNCALLABLE-INSTANCE confusion has been resolved.
    csrhodes committed Sep 9, 2005

    	Make VALIDATE-SUPERCLASS obey the rules.
    	... ah, but we need an additional constraint for CLOS classes
    		to behave: F-S-Cs must have FUNCTION in their CPL, while
    		S-Cs mustn't.  Otherwise you end up with things which
    		are functions but whose type-of isn't subtypep
    		function, and similar disasters.
    	... document this additional constraint.
    csrhodes committed Sep 9, 2005

    	The class SB-PCL::STD-OBJECT is now useless: delete it
    	... this means that there are no direct instances of STD-CLASS
    		any more: so it can be removed from the braid.
    	... document that we're no longer nonconforming wrt
    csrhodes committed Sep 9, 2005

    	Declassification of INSTANCE and FUNCALLABLE-INSTANCE.
    	It turns out that the classes INSTANCE and
            FUNCALLABLE-INSTANCE, as expressed in instance-pointer-lowtag
    	and funcallable-instance-widetag, are incompatible with the
    	MOP's notion of classes: the types INSTANCE and
    	FUNCALLABLE-INSTANCE are necessarily disjoint (no instance can
    	have a widetag of anything other than instance-header-widetag),
    	but FUNCALLABLE-STANDARD-OBJECT is required to be a subclass of
    	STANDARD-OBJECT, and must therefore have the superclasses of
    	STANDARD-OBJECT among its superclasses.  If INSTANCE is one of
    	those, FUNCALLABLE-INSTANCE cannot be, so F-S-Os would not be of
    	type FUNCALLABLE-INSTANCE (which is wrong); if it is not one of
    	those, then ordinary S-Os would not be of type INSTANCE (which
    	is wrong).  CMUCL, at the time of writing, exhibits type system
    	confusion in this area, as demonstrated by CSR cmucl-imp
    	So, we need to do something else; probably most straightforward
    	to make INSTANCE and FUNCALLABLE-INSTANCE named types, as they
    	are of the same order of specialness as e.g. T -- not quite as
    	special, but almost.  Some hacking later...
    	... the usual type system dance.  Play whack-a-mole with test
    		failures and compilation failures until they all go
    		away.  Primtype, class, typetran, and so on are
    		fiddled with.
    	... somewhat hacky code for determining when a class is subtypep
    		instance / funcallable-instance.
    	... different hard-coded constants for genesis; don't make a
    		special instance-layout, because the instance class is
    	... just to prove we've achieved something, make STANDARD-OBJECT
    		a superclass of FUNCALLABLE-STANDARD-OBJECT.
    		(Supporting METAOBJECT should be straightforward now)
    	... many many new tests, both of the before-xc variety (it's
    		amazing in how many ways I can get the type system
    		wrong) and of the regular form.  Also add some
    		ctor tests that aren't exercised yet.
    csrhodes committed Sep 9, 2005

    	Hunt down compiler warnings.
    Thiemo Seufer committed Sep 9, 2005
Commits on Sep 8, 2005
  1. We don't want to adjust pc-offset here, since it potentially misses

    a branch target.
    Thiemo Seufer committed Sep 8, 2005