- Aug 05, 2003
-
-
toy authored
listify-rest-args.
-
gerd authored
greater than safety for stack-allocation to actually happen, which is what ACL defaults to. Use boot15.lisp to bootstrap. * src/bootfiles/18e/boot15.lisp: New file. * src/compiler/node.lisp (leaf): Add slot dynamic-extent. * src/compiler/x86/macros.lisp (load-size, inline-allocation) (not-inline-allocation): Extract from function allocation. (stack-allocation): New function. (allocation): Add arg dynamic-extent. Call stack-allocation if dynamic-extent is true, and speed > safety. * src/compiler/x86/call.lisp (listify-rest-args): Add constant third arg, and pass it to allocation. * src/code/class.lisp (find-layout): Put part in #-bootstrap-dynamic-extent. * src/compiler/ir1tran.lisp (process-dynamic-extent-declaration): New function. (*suppress-dynamic-extent-declaration*): New variable. (process-1-declaration): Call process-dynamic-extent-declaration. (convert-more-entry) [#+x86]: Call %listify-rest-args with third arg dynamic-extent. * src/compiler/eval-comp.lisp (%listify-rest-args) [#+x86]: * src/compiler/fndb.lisp (%listify-rest-args) [#+x86]: Add third arg for dynamic-extent. Possibly temporary workaround for SBCL build problems caused by a situation like (defvar *foo*) (declaim (type foo *foo*)) (defstruct foo) (defun foo () (let ((*foo* (some-unknown-function))) ...)) When a type check is being generated for the local binding of *foo*, *foo*'s type in the info database is still an unknown-type. The typep transform generates a call to %instance-typep, because it knows that foo is an instance. The deftransform for %instance-typep does not run, so an actual call to %instance-typep is being generated. A function %instance-typep doesn't exist at run time, though. * src/compiler/ir1tran.lisp (find-free-variable): If the variable's type is an unknown-type, reparse it, and change the type in the info database.
-
- Aug 02, 2003
-
-
gerd authored
(defun bug1 (x) (declare (type string-and-number x)) (the number (car (reverse x)))) (bug1 (list "one" 1)) => Type error 1 is not of type number. Reported by Luke Gorrie on cmucl-imp. * src/compiler/knownfun.lisp (result-type-first-arg/reverse) (reversed-cons-type): New functions. * src/compiler/fndb.lisp (nreverse, reverse): Use result-type-first-arg/reverse.
-
- Jul 30, 2003
-
-
toy authored
so (and just ignore it).
-
- Jul 19, 2003
-
-
emarsden authored
-
- Jul 16, 2003
-
-
gerd authored
* src/compiler/fndb.lisp (last, butlast, nbutlast): Accept unsigned-byte counters. * src/code/list.lisp (last, butlast, nbutlast): Likewise.
-
- Jul 01, 2003
- Jun 06, 2003
-
-
toy authored
functionality is still missing, but Lisp streams and Gray streams should behave unchanged.
-
- Apr 29, 2003
-
-
emarsden authored
Add missing return type declaration for DEFKNOWN form for %SET-FILL-POINTER.
-
- Apr 27, 2003
-
-
toy authored
-
- Apr 26, 2003
-
-
gerd authored
because the last arg may not be a list.
-
- Apr 23, 2003
- Mar 22, 2003
-
-
gerd authored
= pcl:class part. To get it booted from 18e, cross-compile using boot1.lisp as bootstrap.lisp in pmai's build scripts, then do a normal compile with boot2.lisp as bootstrap.lisp with the resulting Lisp. * code/byte-interp.lisp, code/defstruct.lisp, code/describe.lisp: * code/error.lisp, code/exports.lisp, code/hash-new.lisp: * code/hash.lisp, code/macros.lisp, code/misc.lisp: * code/package.lisp, code/pred.lisp, code/sharpm.lisp, code/type.lisp: * compiler/dump.lisp, compiler/fndb.lisp, compiler/globaldb.lisp: * compiler/proclaim.lisp, compiler/typetran.lisp, compiler/xref.lisp: * compiler/generic/primtype.lisp, compiler/generic/vm-type.lisp: Changes for to use kernel::class etc. * code/class.lisp (toplevel): Shadow class, built-in-class etc. (class): Give it conc-name %class-. (toplevel) [#+bootstrap-lisp-class=pcl-class]: Define old accessors. (everywhere): Use new class accessors. * compiler/generic/vm-fndb.lisp (%make-instance): Change from unsafe to flushable and movable. * code/ntrace.lisp (expand-trace, untrace): Changes for method tracing. * code/profile.lisp (profile, profile-all, unprofile): Method profiling. * pcl/*.text, pcl/bench.lisp, pcl/extensions.lisp: * pcl/fast-init.lisp, pcl/precom1.lisp, pcl/precom4.lisp: * pcl/structure-class.lisp, pcl/user-instances.lisp: Removed. * tools/pclcom.lisp: Changes for my PCL and lisp:class = pcl::class.
-
- Mar 21, 2003
-
-
pmai authored
-
- Feb 28, 2003
-
-
emarsden authored
-
- Feb 15, 2003
-
-
gerd authored
T to FUNCTION. From sbcl.
-
- Feb 14, 2003
-
-
gerd authored
valid-function-name-p. * compiler/fndb.lisp (disassemble): First arg is an extended function designator, according to ANSI, which includes lists.
-
- Feb 09, 2003
-
-
emarsden authored
Compiling the following function generates an efficiency note; with the patch the note disappears. (defun foo () (declare (optimize speed)) (let* ((stream (make-string-input-stream "0 1 2 3)")) (read (read-delimited-list #\) stream))) (find 2 read))) ; (find 2 read) ; Note: Unable to optimize due to type uncertainty: ; The second argument is a (or null vector cons), not a simple-base-string. Problem and fix from Tony Martinez via SBCL.
-
- Jan 29, 2003
-
-
toy authored
Defknown was limiting the subscripts in be fixnums. Change that to be integers.
-
toy authored
Defknowns for bit-and and friends were disallowing an explicit optional arg of NIL. Allow it.
-
toy authored
o Entomotomy bug optional-environment-arg-mistakes: Recognize the optional environment argument for typep, subtypep, upgraded-array-element-type, upgraded-complex-part-type, and various other functions that take an optional environment arg. Currently, all we do with the environment is ignore it. o Entomotomy bug defknowns-for-bit-array-setters-wrong Defknowns for %bitset and %sbitset was only allowing vectors, not multidimensional arrays.
-
- Dec 29, 2002
-
-
pmai authored
The :initial-contents argument to adjust-array isn't restricted to be a list, as the defknown entry erroneously claims. This fix requires an L2 rebuild (or loading of the changed defknown prior to rebuilding), in order for the information to propagate properly.
-
- Nov 13, 2002
-
-
toy authored
Bug noted by Paul Dietz, fix by Gerd Moellmann.
-
- Mar 07, 2002
-
-
pw authored
Based on a patch by Eric Marsden.
-
- Feb 22, 2002
-
-
toy authored
actually of type real since both integers and floats can be returned.
-
- Oct 16, 2001
-
-
toy authored
o Add :external-format option to LOAD, as specified by ANSI. Doesn't do anything currently.
-
- Jul 08, 2001
-
-
pw authored
Implements READ- and WRITE-SEQUENCE on Gray streams, via STREAM-READ-SEQUENCE and STREAM-WRITE-SEQUENCE, and provides a :class keyword to OPEN which lets it return Gray streams classes wrapped around lisp-streams. Load exports.lisp before compiling with this set of changes.
-
- May 27, 2001
-
-
pw authored
:HOST argument.
-
- Apr 12, 2001
-
-
pw authored
Here is the patch that makes the propagate-float-type, propagate-fun-type, and constrain-float-type features the default. All old code is removed. If you recompile, you should probably remove these features, just to be sure (caught a few mistakes that way).
-
- Apr 10, 2001
-
-
pw authored
ANSI CL says LOAD takes an :external-format keyword to specify the format of the file or stream being loaded. CMUCL already had the :contents keyword that does this, but its default was nil instead of :default. The appended patch replaces :contents with :external-format. This will break any code that uses :contents.
-
- Mar 13, 2001
- Aug 24, 2000
-
-
dtc authored
replacing the former :FOLLOW-LINKS argument, and redefine :FOLLOW-LINKS to control the following of symbolic links while searching for matching directories.
-
- Jul 10, 2000
-
-
dtc authored
value may be nil not just an index.
-
- Jul 09, 2000
-
-
dtc authored
o Close does not return a stream, declare is as type t. o Disassemble does not return values, declare it as (values). o Inspect returns an object, declare it as type t. o Room does not return a value, declare it as (values). o Dribble does not return a value, declare it as (values).
-
- Feb 25, 2000
-
-
dtc authored
o The to-readtable argument to copy-readtable may be nil in which case a new readtable is created. o Implement issue GET-MACRO-CHARACTER-READTABLE, the readtable argument of get-macro-character and get-dispatch-macro-character is a readtable designator and may be nil in which case it denotes the standard readtable.
-
- Feb 02, 1999
-
-
pw authored
directory pathname designator. This change may break some user code.
-
- Jan 15, 1999
-
-
dtc authored
flushable as it destructively modifies the sequence argument.
-