Christophe Rhodes [Tue, 18 Feb 2003 12:55:36 +0000 (12:55 +0000)]
0.7.12.42:
A couple of minor fixes for bugs caught by Paul Dietz' test
suite.
... adjust source transform for CONSTANTLY to return a
side-effect-free function;
... OTHERWISE only introduces an otherwise-clause in TYPECASE if
it's the last clause;
... while I'm frobbing TYPECASE, make the style-warning format
string such that output is pretty.
... NEWS update
Christophe Rhodes [Tue, 18 Feb 2003 11:44:42 +0000 (11:44 +0000)]
0.7.12.41:
Yet more type system fixes:
distribute NOT over CONS types
... put *EMPTY-TYPE*-handling logic inside MAKE-CONS-TYPE
... fixes:
(subtypep '(and cons (not (cons symbol integer)))
'(or (cons (not symbol) *) (cons * (not integer)))
unravel some INTEGER/RATIONAL schizophrenia
... (RATIONAL 0 0) is completely equivalent to (INTEGER 0 0)
... fixes:
(subtypep '(rational 0 10) '(or (eql 0) (rational (0) 10)))
... does not fix:
(subtypep '(not (rational -1/2 1/2)) '(not (integer 0 0)))
Christophe Rhodes [Mon, 17 Feb 2003 15:44:59 +0000 (15:44 +0000)]
0.7.12.40:
Fixed a stupid bug in the NOT type translator, revealed by Paul
Dietz' suite:
... properly invert the bound: if it's a CONS, take the CAR;
... now we understand (NOT (RATIONAL (0) (10)) a bit better.
Christophe Rhodes [Mon, 17 Feb 2003 15:22:49 +0000 (15:22 +0000)]
0.7.12.39:
Refactor some of the type system:
... new TYPE-CLASS: NEGATION, for representation of (NOT FOO)
... in TYPEP/CTYPEP/SOURCE-TRANSFORM-TYPEP, too
Also add a few smarts to the existing type system
... give up slightly less often in INTERSECTION-COMPLEX-UNION2
and UNION-COMPLEX-INTERSECTION2
... now that we have a distinct NEGATION class, it's possible to
write sensible UNION and INTERSECTION methods for those,
too
Fixes: (SUBTYPEP T (OR REAL (NOT REAL))),
(SUBTYPEP T (OR KEYWORD (NOT KEYWORD)))
Christophe Rhodes [Sat, 15 Feb 2003 11:16:33 +0000 (11:16 +0000)]
0.7.12.38:
PCL accessors/SLOT-MISSING fixes:
Remove some package fragility of generated accessor functions
... define a new generalized function name class:
SB-PCL::SLOT-ACCESSOR
... s/SLOT-READER-SYMBOL/SLOT-READER-NAME/, and use the new
generalized function names
... now SB-SLOT-ACCESSOR-NAME and *SLOT-ACCESSOR-NAME-PACKAGE*
can go away
Ensure that SLOT-MISSING is called in all required situations.
The easy way would just have been to adjust ASV-FUNCALL slightly,
but that would have been no fun, so include an
optimization due to Gerd Moellmann:
... new LOAD-TIME-VALUE logic that ensures that the relevant
accessor name is always FBOUNDP, so the FBOUNDP check
can be elided at runtime
By this stage, it's all working, but
... while we're at it, also include the
ASV-FUNCALL-as-was/ENSURE-ACCESSOR optimization for
SLOT-BOUNDP, which was not included in historical PCL.
... also, ensure that fast discriminating functions are
constructed, conditional on
*OPTIMIZE-CACHE-FUNCTIONS-P*: eventually, this can
probably be made either unconditional or conditional on
the compilation policy when a generic function is
compiled.
Include a simple test for SLOT-MISSING behaviour.
... this version has also been tested against Gerd Moellmann's
test suite, with no regressions found.
Alexey Dejneka [Fri, 14 Feb 2003 05:53:50 +0000 (05:53 +0000)]
0.7.12.37:
New compiler bug.
Christophe Rhodes [Tue, 11 Feb 2003 15:42:34 +0000 (15:42 +0000)]
0.7.12.36:
More install.sh patching
... $gnumake everywhere
... ${GNUMAKE} not $(GNUMAKE}
Export FUN-INFO-DERIVE-TYPE and friends
... now DEFOPTIMIZER can work in any package that uses SB-C
Install new contrib: SB-ROTATE-BYTE
... implements <http://www.telent.net/ROTATE-BYTE>
... has compiler logic to do so efficiently for (byte 32 0) on
x86: see the README.
Daniel Barlow [Mon, 10 Feb 2003 15:31:13 +0000 (15:31 +0000)]
0.7.12.35
and the rest ...
Daniel Barlow [Mon, 10 Feb 2003 15:13:17 +0000 (15:13 +0000)]
0.7.12.34
make is not always gmake. Apply patch from Raymond Wiker
in sbcl-devel message of 10 Feb 2003
Christophe Rhodes [Mon, 10 Feb 2003 12:32:06 +0000 (12:32 +0000)]
0.7.12.33:
Some easy fixes:
... SYMBOL-FUNCTION returns a function in our implementation
(Robert E. Brown sbcl-devel 2003-02-06)
... READ-DELIMITED-LIST returns a list
(Tony Martinez sbcl-devel 2003-02-09)
... make src/cold/chill.lisp loadable from anywhere
(Rudi Schlatte sbcl-devel 2003-02-09)
Also frob NEWS: put exciting things such as incompatible changes
and new contrib at the top of the section.
Daniel Barlow [Sun, 9 Feb 2003 20:49:48 +0000 (20:49 +0000)]
0.7.12.32
Fix sb-db-sockets.asd components
Add semi-automatically generated docn for it (index.html)
Christophe Rhodes [Sun, 9 Feb 2003 20:20:40 +0000 (20:20 +0000)]
0.7.12.31:
Yet another incremental extension to the type system algorithms.
In the presence of types such as (MEMBER 1 "foo" (X)), we
cannot hash VALUES-SPECIFIER-TYPE on EQUAL, because two
such types can contain the same or different (under EQL)
"foo" or (X), and yet be the same under EQUALity. So
... define a new function EQUAL-BUT-NO-CAR-RECURSION, which is
almost but not quite what it sounds (it tests strings
bit-vectors and lists by EQL, not EQUAL);
... use it as the new test function for the
VALUES-SPECIFIER-TYPE hash table.
The presence of numeric types in NOT types can be problematic,
as Paul Dietz' test of (OR BIGNUM FIXNUM) showed. So
... work a lot harder in the NOT type translator, to bring
numeric types out: we treat (NOT (INTEGER a b)) as
(OR (NOT INTEGER) (INTEGER * a) (INTEGER b *)), with the
obvious generalizations.
Now (AND INTEGER (NOT FIXNUM)) parses as
`(OR (INTEGER * ,(1- MOST-NEGATIVE-FIXNUM))
(INTEGER ,(1+ MOST-POSITIVE-FIXNUM))
which is right, but no longer an intersection type, so
... move BIGNUM unparsing from INTERSECTION-TYPE to UNION-TYPE.
Even with all this, we don't get (OR INTEGER RATIO) right, so
... teach the type system some more set theory, with new
HAIRY-TYPE and INTERSECTION union methods.
Now (SUBTYPEP 'RATIONAL '(OR INTEGER RATIO)) returns T, T
(and all the people rejoiced!)
Daniel Barlow [Sat, 8 Feb 2003 15:41:19 +0000 (15:41 +0000)]
0.7.12.30
Update asdf to newer upstream version (:serial t)
module-provide-asdf now refuses to try providing a module
unless it can find a system file, so doesn't usurp the whole
PROVIDE/REQUIRE mechanism for non-asdf modules.
make-target-contrib.sh should set SBCL_HOME to the source
tree, so that inter-module dependencies are searched for in
the right place
Actually add the ACL repl to the repository this time
Daniel Barlow [Fri, 7 Feb 2003 17:35:31 +0000 (17:35 +0000)]
0.7.12.29
Cleaned up sb-bsd-sockets ...
... some package renaming missed last time
... 'make test' now actually runs the test scripts instead of
just returning successfully
Daniel Barlow [Fri, 7 Feb 2003 17:14:28 +0000 (17:14 +0000)]
renamed to sb-bsd-sockets
Daniel Barlow [Fri, 7 Feb 2003 17:11:38 +0000 (17:11 +0000)]
0.7.12.28
Added WHN's port of Kevin Rosenberg's ACL-like toplevel as
the contrib package SB-ACLREPL
Tidied up some of the contrib infrastructure in pursuance of OAOO
Renamefest: adopt standard SB- package prefixes for all contribs
Contrib packages are now built by make-target-contrib.sh
(called from make.sh) instead of being left to install.sh time
Daniel Barlow [Fri, 7 Feb 2003 15:07:57 +0000 (15:07 +0000)]
0.7.12.28
Commit changes to NEWS that should have been associated with
0.7.12.24
Christophe Rhodes [Fri, 7 Feb 2003 14:54:05 +0000 (14:54 +0000)]
0.7.12.26:
fix #1# for STANDARD-OBJECT objects (as reported by Tony
Martinez on cll 2003-02-03)
... slightly sucky fix, yes; will probably need revisiting when
PCL goodness happens.
Daniel Barlow [Fri, 7 Feb 2003 02:14:24 +0000 (02:14 +0000)]
0.7.12.25
Short note in the user's manual to document (or at least allude
vaguely to) the ext:*module-provider-functions* list as it
applies to PROVIDE/REQUIRE
Daniel Barlow [Fri, 7 Feb 2003 02:11:09 +0000 (02:11 +0000)]
0.7.12.24
Changes to PROVIDE/REQUIRE to make them (a) conform to ANSI,
(b) any use...
... cease nonstandardly downcasing elements in *MODULES*
... add a list of *MODULE-PROVIDER-FUNCTIONS* which the user
can hang functions off to make REQUIRE do whatever he
wants it to do.
... its default member knows how to load files in
$SBCL_ROOT/modulename/modulename
First pass at a contrib infrastructure...
... change install.sh to do new and exciting things, and as a
side benefit, able to install other than into /usr/local
... amend INSTALL instructions to match
Two contrib modules...
... asdf here is a direct copy of the one in cclan, but
despite being portable and therefore not really
qualifying, will be v. useful for loading the others
... bsd-sockets (db-sockets by any other name) is a fairly
low-level interface to the BSD socket API: high-level
interfaces (e.g. ACL-compatible, or CLOCC PORT) could be
built on top of it without getting dirty with ALIEN
William Harold Newman [Thu, 6 Feb 2003 01:27:10 +0000 (01:27 +0000)]
0.7.12.23:
added support for the customary --help and --version command
line options, as #lisp IRCers encouraged me to do
William Harold Newman [Wed, 5 Feb 2003 17:12:32 +0000 (17:12 +0000)]
0.7.12.22:
cautiously reconnoitering the great dragon's lair: moved the
first innocuous-looking src/pcl/ file into cold build
Christophe Rhodes [Wed, 5 Feb 2003 13:03:27 +0000 (13:03 +0000)]
0.7.12.21:
As per Johannes Groedem sbcl-devel 2003-01-28, use the simplest
invocation of hostname(1) possible, to avoid e.g.
attempting to set the system hostname.
William Harold Newman [Wed, 5 Feb 2003 00:37:29 +0000 (00:37 +0000)]
0.7.12.20:
lifted %COERCE-CALLABLE-TO-FUN conversion out of various
loops, plus misc. other cleanups, as per patch from
Robert E. Brown sbcl-devel 2003-01-31
misc. tidying in comments and doc strings
made LIST-REMOVE-DUPLICATES* not rely on MEMBER supporting
arglists like :TEST NIL :TEST-NOT #'FOO
Christophe Rhodes [Tue, 4 Feb 2003 17:11:31 +0000 (17:11 +0000)]
0.7.12.19:
Merge Gray streams OAOOness (Rudi Schlatte sbcl-devel 2002-02-03)
... export relevant symbols from SB!KERNEL
Christophe Rhodes [Mon, 3 Feb 2003 16:23:55 +0000 (16:23 +0000)]
0.7.12.18:
Make genesis pass package documentation on as well as all the
symbol information
... add another element to *COLD-PACKAGE-SYMBOLS*, yuk
... test for documentation of (FIND-PACKAGE SB-EXT), because users
will legitimately want to know about it.
Slightly more OAOOness for generalized function names
... FUN-NAME-BLOCK-NAME now knows about CLASS-PREDICATE
Christophe Rhodes [Mon, 3 Feb 2003 15:41:43 +0000 (15:41 +0000)]
0.7.12.17:
Commit sequence functions and bounding indices reworking:
... use *SEQUENCE-KEYWORD-INFO* to define handling for
the general sequence functions, and define more of them
through DEFINE-SEQUENCE-TRAVERSER;
... remove now redundant END-TOO-LARGE-ERROR, replacing it with
the more general BOUNDING-INDICES-BAD-ERROR;
... write %CHECK-VECTOR-SEQUENCE-BOUNDS, a vector-specialised
routine for this checking operation, and use it in
string functions and in the vector transforms for FIND,
POSITION and friends;
... ELT on LIST arguments should not be transformed to NTH in
safe code, for error signalling reasons
... include some tests for this new behaviour.
Alexey Dejneka [Mon, 3 Feb 2003 11:55:56 +0000 (11:55 +0000)]
0.7.12.16:
Fixed compiler failure related to checking types of functions
(reported by Robert E. Brown);
William Harold Newman [Sun, 2 Feb 2003 14:03:05 +0000 (14:03 +0000)]
0.7.12.5:
fixed s/function/fun/ gone wild in restart logic, as per
patch from Robert E. Brown sbcl-devel 2003-02-01
Christophe Rhodes [Fri, 31 Jan 2003 15:08:28 +0000 (15:08 +0000)]
0.7.12.14:
Type system fixes (thanks to Paul Dietz for the report)
... make the intersection of negation types with non-hairy types
smarter, by considering the type relationship of the
negation (e.g. (AND BASE-CHAR (NOT BASE-CHAR)) and
(AND FIXNUM (NOT INTEGER)) should both be canonicalized
to NIL).
... if either of the CAR-type or CDR-type of a CONS type is NIL,
then the whole type must be NIL too.
(also fixes the unparse of EXTENDED-CHAR)
Christophe Rhodes [Fri, 31 Jan 2003 09:28:35 +0000 (09:28 +0000)]
0.7.12.13:
Fix (DEFCLASS #:FOO () ())
... relax restriction on function names, allowing lists of
length two headed by SB!PCL::CLASS-PREDICATE
... OA(more-or-less)OOify function name logic
Alexey Dejneka [Fri, 31 Jan 2003 05:59:01 +0000 (05:59 +0000)]
0.7.12.12:
* Declare MAPCAN and MAPCON to return T;
* Remove (:FUNCTION :IR1-TRANSFORM) info type.
Christophe Rhodes [Thu, 30 Jan 2003 12:23:10 +0000 (12:23 +0000)]
0.7.12.11:
Fix another bug in LOG, this time for rationals not near 1
... use double-precision intermediate values
still no regression tests, sorry
Alexey Dejneka [Wed, 29 Jan 2003 11:39:49 +0000 (11:39 +0000)]
0.7.12.10:
* Definitions of dependent optimizations qualities are grouped
in src/compiler/policies.lisp;
* new dependent optimization policy: MERGE-TAIL-CALLS;
... which is used in XEPs.
Alexey Dejneka [Wed, 29 Jan 2003 11:29:12 +0000 (11:29 +0000)]
0.7.12.10:
* Definitions of dependent optimizations qualities are grouped
in src/compiler/policies.lisp;
* new dependent optimization policy: MERGE-TAIL-CALLS;
... which is used in XEPs.
Christophe Rhodes [Tue, 28 Jan 2003 17:21:09 +0000 (17:21 +0000)]
0.7.12.9:
Fix issue in DEFSTRUCT :NAMED :TYPE structure predicates, which
had a tendency to signal errors on #() or dotted lists.
Alexey Dejneka [Tue, 28 Jan 2003 11:53:31 +0000 (11:53 +0000)]
0.7.12.8:
* Fixed bug 231b (SETQ ignored free type declarations);
* some stylistic changes.
Christophe Rhodes [Mon, 27 Jan 2003 21:41:25 +0000 (21:41 +0000)]
0.7.12.7:
Fix bug 228, by allowing pseudoLAMBDA-expressions to be compiled
by FUNCTION and COMPILE:
... define IR1-CONVERT-LAMBDALIKE to massage the pseudolambda
into a lambda;
... define SB-INT:NAMED-LAMBDA and SB-KERNEL:LAMBDA-WITH-LEXENV
macros analogous to CL:LAMBDA;
... various bits of commentary.
This change also has the effect of quieting the compiler when
compiling defmethod forms with arguments naming classes
and a CALL-NEXT-METHOD in the body.
Christophe Rhodes [Mon, 27 Jan 2003 17:45:37 +0000 (17:45 +0000)]
0.7.12.6:
Fix compiled calls to bit-array functions to allow an explicit
opt-arg of NIL
... and also fix the defknowns for %BITSET and %SBITSET, even though
currently they always get SOURCE-TRANSFORMed away.
... minimal tests for these two issues
Christophe Rhodes [Mon, 27 Jan 2003 17:27:51 +0000 (17:27 +0000)]
0.7.12.5:
Fix bug 157: give TYPEP and friends an (ignored) optional
environment argument
... and open bug 237 documenting the implementation
deficiencies.
Also allow calls to MACROEXPAND and friends with an explicit NIL
environment argument to be compiled and executed.
Christophe Rhodes [Mon, 27 Jan 2003 15:09:57 +0000 (15:09 +0000)]
0.7.12.4:
Fix bug in LOG for rational numbers near 1.
... also do neato things for e.g. (log <bignum> 3), so that
answers can be computed even though <bignum> is bigger
than MOST-POSITIVE-DOUBLE-FLOAT.
... regression tests will be along shortly, I hope
Christophe Rhodes [Mon, 27 Jan 2003 09:08:49 +0000 (09:08 +0000)]
0.7.12.3:
Fix two difficult-to-test bugs, as per discussion ('Three "interesting"
PCL bugs', sbcl-devel 2003-01-25)
... make sure the %CLASS declaration is in the right place even if
a class name is the same as a variable name;
... for FIXNUM emf, the new-value and the slot object arguments
are distinct. This may well be dead code.
Christophe Rhodes [Sun, 26 Jan 2003 17:25:14 +0000 (17:25 +0000)]
0.7.12.2:
Allow ARRAY-IN-BOUNDS-P to take arbitrary integers as arguments
without signalling a TYPE-ERROR on non-INDEXes
(misbehaviour found by Paul Dietz' test suite)
Alexey Dejneka [Sun, 26 Jan 2003 06:38:09 +0000 (06:38 +0000)]
0.7.12.1:
* Replace TRULY-THE with THE in inline structure slot
accessors when they may be not initialized;
* treat known function bindings as constant;
* CHANGE-REF-LEAF: mark the substitution as used.
William Harold Newman [Sat, 25 Jan 2003 19:30:16 +0000 (19:30 +0000)]
0.7.12:
release, tagged as sbcl_0_7_12
Alexey Dejneka [Wed, 22 Jan 2003 08:45:35 +0000 (08:45 +0000)]
0.7.11.14:
One more bug.
Alexey Dejneka [Wed, 22 Jan 2003 07:37:48 +0000 (07:37 +0000)]
0.7.11.13:
Bugs.
Alexey Dejneka [Tue, 21 Jan 2003 06:19:27 +0000 (06:19 +0000)]
0.7.11.12:
Register bugs in structure slot type checking (CSR and WHN,
2003-01-19).
Alexey Dejneka [Mon, 20 Jan 2003 08:15:05 +0000 (08:15 +0000)]
OOps.
Alexey Dejneka [Mon, 20 Jan 2003 08:06:17 +0000 (08:06 +0000)]
0.7.11.11:
* Add dependent optimization qualities: LET-CONVERTION,
TYPE-CHECK, VERIFY-ARG-COUNT;
* add SB-EXT:DESCRIBE-COMPILER-POLICY;
Alexey Dejneka [Sun, 19 Jan 2003 09:40:15 +0000 (09:40 +0000)]
0.7.11.10:
Fixed some bugs revealed by Paul Dietz' test suite:
** BOA constructor with &AUX argument without a default value does
not cause a type error;
** CONSTANTP now returns true for all self-evaluating objects.
William Harold Newman [Sat, 18 Jan 2003 20:31:33 +0000 (20:31 +0000)]
0.7.11.9:
added hooks, more or less as sketched by dan_b on sbcl-devel, to
support kmr/acl-style alternate toplevel loop
William Harold Newman [Mon, 13 Jan 2003 22:14:29 +0000 (22:14 +0000)]
0.7.11.8:
rewrote MERGE-LISTS* to avoid using a global variable for
scratch (motivated by Wolfgang Jenkner's bug report
sbcl-devel 2003-01-05, and also by the prospect of
threads)
rewrote stuff calling MERGE-LISTS* to coerce function
designators early once and for all (instead of on
every call to MERGE-LISTS*)
added test cases
trivial style/comment/name tweaks
Christophe Rhodes [Sat, 11 Jan 2003 17:52:35 +0000 (17:52 +0000)]
0.7.11.7:
Fix for averrance failure due to DEBUG-RETURN interfering with
type system (explanation APD sbcl-devel 2003-01-10)
... disable insertion of CATCH if it was disabled in an outer
LAMBDA;
... enable insertion of CATCH when compiling top-level forms, so
that the evaluator continues to have DEBUG-RETURN
goodness.
Christophe Rhodes [Wed, 8 Jan 2003 10:59:10 +0000 (10:59 +0000)]
0.7.11.6:
Fix bugs identified by Paul Dietz (cmucl-imp 2003-01-03) for
printing and reading arrays
... inspired by but slightly different from Gerd Moellmann fixes
cmucl-imp 2003-01-04
Christophe Rhodes [Tue, 7 Jan 2003 14:23:24 +0000 (14:23 +0000)]
0.7.11.5:
Implement the RETURN debugger command.
... CATCH block insertion conditional on
(> DEBUG (MAX SPEED SPACE))
... change interactor policy to make this the case
... note as experimental in DEBUG help string
William Harold Newman [Sat, 4 Jan 2003 15:51:02 +0000 (15:51 +0000)]
0.7.11.4:
Try harder to find GNU make (instead of first running
make-host-1.sh, then bailing out in make-target-1.sh)
as per Fufie, rudi, and Krystof on #lisp. (Google says
"don't be evil", and while we're not that good, at
least we can try not to be too annoying.:-)
Make chill.lisp not die on short package names. (inspired by
Rudi Schlatte's patch sbcl-devel 2003-01-04)
Alexey Dejneka [Sat, 4 Jan 2003 14:42:39 +0000 (14:42 +0000)]
0.7.11.3:
Fixed bug in embedded calls of SORT (reported and investigated
by Wolfgang Jenkner).
Alexey Dejneka [Sat, 4 Jan 2003 10:12:43 +0000 (10:12 +0000)]
0.7.11.2:
Merged in the mti-1202 branch:
... restored constraint propagation from type assertions;
... removed bogus type declarations in WITH-PACKAGE-ITERATOR;
Alexey Dejneka [Fri, 3 Jan 2003 18:53:46 +0000 (18:53 +0000)]
0.7.11.1:
New bug.
William Harold Newman [Tue, 31 Dec 2002 20:45:29 +0000 (20:45 +0000)]
0.7.11:
release, tagged as sbcl_0_7_11
Christophe Rhodes [Mon, 30 Dec 2002 00:42:27 +0000 (00:42 +0000)]
0.7.10.36:
Clean up regressions, easy new bugs, etc.
... fix one or two embarrassing bugs in ctor MAKE-INSTANCE optimization
patch:
* REINITIALIZE-INSTANCE now checks arguments again
* defining methods on MAKE-INSTANCE (or its siblings) now
invalidates the optimized methods for subclasses too
... trivial ADJUST-ARRAY patch
William Harold Newman [Sun, 29 Dec 2002 18:01:44 +0000 (18:01 +0000)]
0.7.10.35:
trivial comment fix
William Harold Newman [Sun, 29 Dec 2002 16:51:31 +0000 (16:51 +0000)]
0.7.10.34, continued:
belatedly checking in version.lisp again, since I keep
doing cvs up, select all files, update version.lisp-expr,
check in:-(
William Harold Newman [Sat, 28 Dec 2002 20:52:47 +0000 (20:52 +0000)]
0.7.10.34:
new BUGS entry re. (I assume) 0.7.10.31 ctor.lisp stuff
trivial OAOO tweak on 0.7.10.32 code
Alexey Dejneka [Fri, 27 Dec 2002 11:05:20 +0000 (11:05 +0000)]
0.7.10.32:
Fix bug in CONSTANT-REFERENCE-P: function name may be
(SETF symbol).
Alexey Dejneka [Thu, 26 Dec 2002 20:05:02 +0000 (20:05 +0000)]
0.7.10.32:
New bug.
Christophe Rhodes [Mon, 23 Dec 2002 13:52:59 +0000 (13:52 +0000)]
0.7.10.31:
Installed ctor.lisp MAKE-INSTANCE optimization (from Gerd
Moellmann, via CSR sbcl-devel 2002-12-21)
... wrote tests for those bugs which it fixes
... do not delete fast-init.lisp yet; waiting for user feedback before
destroying some CVS history
... update COPYING information to reflect the new copyright
owner
Alexey Dejneka [Sun, 22 Dec 2002 14:19:52 +0000 (14:19 +0000)]
0.7.10.30:
Fixed bug 232, shown by Paul Dietz' test suite.
Christophe Rhodes [Sat, 21 Dec 2002 10:53:28 +0000 (10:53 +0000)]
0.7.10.29:
Fix compiler crash in new COERCE defoptimizer
... CAREFUL-SPECIFIER-TYPE can return NIL, so handle that case
too. (Might it not be nice to provide a compiler
warning? Or should that be left to the IR1-TRANSFORM?)
Alexey Dejneka [Sat, 21 Dec 2002 06:38:00 +0000 (06:38 +0000)]
0.7.10.28:
Fixed bug 231: SETQ did not correctly check the type of a
variable being set (reported by Robert E. Brown)
Christophe Rhodes [Fri, 20 Dec 2002 11:55:52 +0000 (11:55 +0000)]
0.7.10.27:
Just log a bug (reported sbcl-devel 2002-12-19 by Robert E. Brown
Christophe Rhodes [Thu, 19 Dec 2002 16:27:01 +0000 (16:27 +0000)]
0.7.10.26:
Fix up a theoretical bug in the COMPILE DERIVE-TYPE-OPTIMIZER
... '(VALUES FUNCTION BOOLEAN BOOLEAN), not 'FUNCTION
(why only a "theoretical" bug? Well, at present, SBCL's type
engine returns (VALUES FUNCTION BOOLEAN BOOLEAN) for
(VALUES-TYPE-INTERSECTION
'FUNCTION
'(VALUES (OR FUNCTION SYMBOL) BOOLEAN BOOLEAN))
so it DWIM. However, CMUCL doesn't (it returns the empty type
instead), which led to the discovery of this error by Raymond
Toy when he tried to port the optimizer.)
Alexey Dejneka [Thu, 19 Dec 2002 13:07:06 +0000 (13:07 +0000)]
0.7.10.25:
Removed several declarations from src/code/[target-]package.
Alexey Dejneka [Thu, 19 Dec 2002 07:24:15 +0000 (07:24 +0000)]
0.7.10.24:
BUGS file cleanup:
... removed bug entries 178 and 199.
New bug: pretty printing conflicts with readability.
Alexey Dejneka [Thu, 19 Dec 2002 06:24:23 +0000 (06:24 +0000)]
0.7.10.23:
Fix bug 223: functional binding of a symbol is constant only
if the symbol is in CL package.
Christophe Rhodes [Wed, 18 Dec 2002 16:41:45 +0000 (16:41 +0000)]
0.7.10.22:
Fix obscure DEFSTRUCT :CONC-NAME handling bug, revealed by Paul
Dietz' ansi-tests
... :CONC-NAME NIL means something different from :CONC-NAME ""
Also some belated tests for extra COERCE logic
Alexey Dejneka [Tue, 17 Dec 2002 12:10:22 +0000 (12:10 +0000)]
0.7.10.21:
Delete CLAMBDA when its BIND is detected to be unreachable.
Christophe Rhodes [Mon, 16 Dec 2002 16:21:49 +0000 (16:21 +0000)]
0.7.10.20:
Fix bug 222 (as per APD sbcl-devel 2002-12-11)
... define the macro in the correct (restricted) lexical context.
Fix bug in COERCE [e.g. (COERCE 2 '(SINGLE-FLOAT 3.0 4.0))]
... when converting to a real type, don't be so lenient if the
original datum is a rational.
Define improved DERIVE-TYPE-OPTIMIZER for COERCE
... for constant RESULT-TYPE arguments, write a branch that
understands complex canonicalization
... leave in old branch for ARRAY-ELEMENT-TYPE return types
Write DERIVE-TYPE-OPTIMIZER for COMPILE
... (COMPILE NIL <x>) returns an object of type FUNCTION
William Harold Newman [Sun, 15 Dec 2002 16:40:09 +0000 (16:40 +0000)]
0.7.10.19:
comments documenting :NOT-HOST and :NOT-TARGET flags
William Harold Newman [Sat, 14 Dec 2002 22:11:54 +0000 (22:11 +0000)]
0.7.10.18, continued:
(forgot to re-cvs-up after I modified version.lisp-expr,
so pcl-cvs didn't know to check it in originally)
William Harold Newman [Sat, 14 Dec 2002 22:10:06 +0000 (22:10 +0000)]
0.7.10.18:
merged Robert E. Brown shush-the-compiler patch (sbcl-devel
2002-12-13)
minor changes...
...removed DECLAIM FTYPE for
SLOT-ACCESSOR-INLINE-EXPANSION-DESIGNATORS on the
theory that it's too fragile (since (1) S-A-I-E-D does
currently return functions, but could validly return
nonfunctions in some later implementation, and (2)
SBCL's declarations-are-assertions still doesn't work
right for DECLAIM FTYPE)
...sometimes used THE instead of DECLARE
(didn't do yet, but still intend to: add some documentation
related to drichards' #lisp question about :NOT-HOST)
Christophe Rhodes [Thu, 12 Dec 2002 11:47:36 +0000 (11:47 +0000)]
0.7.10.17:
Adjust test file running environment so that *.pure.lisp tests
are run with assertoid loaded.
... give assertoid its own package
... use it in run-tests.sh for *.pure.lisp
... also use it where applicable in *.impure.lisp
Christophe Rhodes [Wed, 11 Dec 2002 11:10:27 +0000 (11:10 +0000)]
0.7.10.16:
Fix one "outstanding embarrassment" (as per CSR sbcl-devel
2002-12-10): no more building of compiler files in
warm load.
... play symlink games instead, to build the troublesome
assembly files twice under different names (will need
adjustments to work on non-Unix filesystems (e.g.
NTFS) but no more than the rest of the build).
Christophe Rhodes [Tue, 10 Dec 2002 16:16:15 +0000 (16:16 +0000)]
0.7.10.15:
Fix :CONC-NAME bug noted by Paul Dietz for cmucl
(cmucl-imp 2002-12-08 ":conc-name by itself")
Christophe Rhodes [Mon, 9 Dec 2002 11:54:48 +0000 (11:54 +0000)]
0.7.10.14:
Fix bug 219 (ANSIfying DEFINE-COMPILER-MACRO in non-toplevel
contexts):
... remove IR1 implementation, converting to a macro- and
EVAL-WHEN-based implementation
... increment fasl file version number
also, while I'm at it, set the COMPILER-MACRO-FUNCTION name
to something useful for use in the debugger; apply
similar fix for the MACRO-FUNCTION of a macro:
... move DEBUG-NAMIFY to SB-INT and export it.
Christophe Rhodes [Fri, 6 Dec 2002 14:56:58 +0000 (14:56 +0000)]
0.7.10.13:
Merge <sys/ucontext.h> patch for building under FreeBSD-5.0
(Dag-Erling Smorgrav sbcl-devel 26-11-2002)
... other (warning) patches punted because of lack of
testing facilities
Christophe Rhodes [Fri, 6 Dec 2002 10:45:10 +0000 (10:45 +0000)]
0.7.10.12:
Make FILE-STREAM be the CLASS-NAME of things formerly known as
FD-STREAMs
Christophe Rhodes [Thu, 5 Dec 2002 10:44:43 +0000 (10:44 +0000)]
0.7.10.11:
A couple of array fixes
... make DESCRIBE work on rank-0 arrays (Lutz Euler sbcl-devel
2002-12-03)
... make DEFTRANSFORM MAKE-ARRAY warn (or style-warn) in the
various appropriate cases:
* default :INITIAL-ELEMENT not compatible with :ELEMENT-TYPE
* provided :INITIAL-ELEMENT not compatible with :ELEMENT-TYPE
* provided :INITIAL-ELEMENT not compatible with
(UPGRADED-ARRAY-ELEMENT-TYPE ELEMENT-TYPE)
Christophe Rhodes [Wed, 4 Dec 2002 15:23:00 +0000 (15:23 +0000)]
0.7.10.10:
Working INLINE inside MACROLET for user code.
(more or less as per CSR sbcl-devel 2002-12-03)
... change tricky cross-compiled inline functions to source
transforms (including adding some functions to the
function database)
... use now-working FUNCTION-LAMBDA-EXPRESSION to get the
expander function for local macros
... build a complex LAMBDA-WITH-LEXENV for inlining user code
(like CMUCL's INLINE-SYNTACTIC-CLOSURE-LAMBDA does)
Some miscellaneous frobs
... actually signal a style warning for array code (though it
might actually be in currently-dead-but-should-be-alive
code)
... actually test the return value in the second half of
filesys.test.sh
... minor text adjustments (no more calling this period "early
0.7.x")
Christophe Rhodes [Wed, 4 Dec 2002 10:00:51 +0000 (10:00 +0000)]
0.7.10.9:
Merge fix for bug 127 (Valtteri Vuorikoski sbcl-devel 2002-11-30)
(entomotomy:
... store a (ACCESSOR-NAME . INDEX) alist, not just a list of
accessor names, so that we can detect some other edge
cases
... write some basic tests
... increment fasl file version
Christophe Rhodes [Mon, 2 Dec 2002 16:59:08 +0000 (16:59 +0000)]
0.7.10.8:
Staging-post on the way to working INLINE/MACROLET
... implement previously (MACROLET ((DEF ...)) (DEF ...)) INLINE
functions as defined by global !DEF macros
... don't touch SORT-VECTOR, as it is complicated
... implement a BUG 117 bogowarning workaround in
code/defstruct.lisp
The plan from here is to move FIND and friends into the realm of
SOURCE-TRANSFORMS, so that the cross-compiler is born knowing how to
compile FIND; a similar solution is likely for SORT-VECTOR. Then
defensive code can be written around a version of
MAYBE-INLINE-SYNTACTIC-CLOSURE (as per CSR sbcl-devel 2002-07-02 "BUG
156 and INLINE FIND"), and voilĂ ! working INLINE.
Christophe Rhodes [Mon, 2 Dec 2002 14:24:45 +0000 (14:24 +0000)]
0.7.10.7:
Improve FUNCTION-LAMBDA-EXPRESSION marginally, to help in
getting INLINE-inside-MACROLET working in the target
compiler
... associate the function with the debug-source where possible
... we now store (LAMBDA ...), not (FUNCTION (LAMBDA ...)), so
remove the bogus SECOND
William Harold Newman [Mon, 2 Dec 2002 01:33:57 +0000 (01:33 +0000)]
0.7.10.6:
embarrassment reduction: transformed ugly duplicate
DEF-BOOLEAN-ATTRIBUTE into ugly OAOO (and also renamed
it to !DEF-BOOLEAN-ATTRIBUTE, since not aspiring to
make it exist on the target seemed to make it easier
to think about)
Also, as long as I'm renaming it anyway, it has no special
connection to the compiler and is used in SB!ASSEM too,
I moved !DEF-BOOLEAN-ATTRIBUTE from SB!C to SB!INT.
Alexey Dejneka [Thu, 28 Nov 2002 10:42:44 +0000 (10:42 +0000)]
0.7.10.5:
Cleanup of type checking in character functions.
... fixed bug 230.
Alexey Dejneka [Thu, 28 Nov 2002 06:00:55 +0000 (06:00 +0000)]
0.7.10.4:
Second try on the bug 115: convert :DEBUG-ENVIRONMENT to
:ENVIRONMENT TN in its native environment. This is not
efficient, but should not cause any new bugs.
Alexey Dejneka [Thu, 28 Nov 2002 04:10:20 +0000 (04:10 +0000)]
0.7.10.3:
Fix bug: (FUNCTION (&REST T)) = (FUNCTION *).
Christophe Rhodes [Wed, 27 Nov 2002 17:08:30 +0000 (17:08 +0000)]
0.7.10.2:
Fix remaining LOOP bugs from GCL ansi-tests
... duplicate variable names (at any level) signal an error at
macroexpansion time;
... IT is only a special loop symbol in the first clause of a
conditional execution clause.
Christophe Rhodes [Wed, 27 Nov 2002 16:17:09 +0000 (16:17 +0000)]
0.7.10.1:
Fix yet another LOOP bug
... disallow aggregate booleans with anonymous collectors
... and the converse :-)
William Harold Newman [Wed, 27 Nov 2002 14:47:09 +0000 (14:47 +0000)]
0.7.10:
release, tagged as sbcl_0_7_10