- Oct 12, 1990
-
-
ram authored
We give a note if we see a function related thing for a SETF name that has a SETF macro as well. This NOTE-IF-SETF-FUNCTION-AND-MACRO also is used in ir1tran. Changed DEFINE-FUNCTION-NAME to call the above, and also to check for redefining a slot accessor or alien operator. Added UNDEFINE-FUNCTION-NAME. Added UNDEFINE-STRUCTURE, which uses the previous. Structures are undefined whenever we change a structure or its supertypes, or whenever we redefine an accessor as some other kind of function. This causes a warning. Changed DEFSTRUCT to make the accessors WHERE-FROM :DECLARED rather than :DEFINED, since the stronger claim seems reasonable. Made %%COMPILER-DEFSTRUCT flame if we try to define a primitive type and warn if we redefine a DEFTYPE.
-
ram authored
for THE.
-
ram authored
local call. Added stuff to put stuff in the DEBUG-SOURCE-INFO, the function in the case of DEFUN (so that FUNCTION-LAMBDA-EXPRESSION can work), and whatever is the :SOURCE-INFO argument to COMPILE-FROM-STREAM (for possible future clever editor hacks.)
-
ram authored
Changed LTN-ANNOTATE-RETURN to intersect the continuation asserted type with the union of non-tail uses (conditional on a non-null intersection.)
-
ram authored
conception of what UNSAFE means. Also, clarified that functions which are undefined on constant arguments (e.g. DELETE) are not FOLDABLE, even if they have no predictable side-effect.
-
ram authored
Added SUBSTITUTE-LEAF-IF. Changed *defmumble-take-car-forms* to *source-context- and made it use on all source context forms so that we can squelch (function (lambda....) Added FILE-NAME, FILE-POSITION and ORIGNAL-SOURCE-PATH slots to the COMPILER-ERROR-CONTEXT. Added hemlock compiler notification hooks. Changed *error-print-level* and *error-print-length* to go out to *print-level* and *print-length* when they are NIL. Added printing of the source file in PRINT-ERROR-MESSAGE.
-
- Oct 11, 1990
-
-
ram authored
-
ram authored
type. Fixed it to test FBOUNDP on the right symbol so that %NOTE-TYPE-DEFINED can get called. Changed %%DEFUN to use DEFINE-FUNCTION-NAME and also to blow away any assumed type info.
-
ram authored
it can tell whether a function it's got is the real original DEFUN function, or if it is some internal function.
-
ram authored
:LISP and :STREAM. Added DEBUG-SOURCE-INFO slot for useful stuff.
-
ram authored
Flushed "push" command. Made "l" command accept a prefix of the variables to print. Made source commands die more gracefully if there is no d-s-start-positions. Made source commands understand the new :STREAM debug-info format. Made "flush" print whether it turned flushing on or off.
-
ram authored
Added *DERIVE-FUNCTION-TYPES* switch which can inhibit inter-routine type interence. Fixed some broken FTYPE proclamations that have been noticed now that the declarations are applied to the definition. Added the VALUES declaration for conveniently declaring the return values from a function (or any other form that has declarations.) Made the gensym introduced to hold the value before defaulting for hairy keyword args have a comprehensible name so that type errors are somewhat more informative. Also, if the keyword default isn't hairy, give the value temp the right type so that the type check is forced back into the XEP. Made FIND-FREE-FUNCTION note if a setf function is also a setf macro. Made REFERENCE-CONSTANT error if the constant isn't dumpable. Fixed THE to be correct, which required adding information into the LEXENV and having USE-CONTINUATION cooperate. Added doc strings for all the special forms that didn't have any. Ripped out most of the code in the %COMPILER-DEFSTRUCT translator now that most everything is done by %%COMPILER-DEFSTRUCT. Frobbed DEFMACRO to clobber any old function info with UNDEFINE-FUNCTION-NAME. Tweaked %DEFUN translator quite a bit. NOTINLINE declarations are now respected as forcing named call. Changed to use ASSERT-DEFINITION-TYPE to apply any FTYPE proclamation to the definition. Also, call CHECK-FREE-FUNCTION now if we can't enter the functional into *FREE-FUNCTIONS* for some reason. Made %DEFCONSTANT warn about redefining constant or specials. Also, made DEFCONSTANT always eval the form at compile time, as this is now allowed
-
ram authored
-
ram authored
see a definition, and some other minor tweaks.
-
ram authored
is :PRIMITIVE.
-
ram authored
the UNSAFE and FOLDABLE attributes, and flushed some of the old DERIVE-TYPE annotations that are now implemented with special case derive-type optimizers. Also finished the conversion of the list functions, so that the compiler knows which args are supposed to be lists, etc.
-
ram authored
for both :LISP and :STREAM.
-
ram authored
to a DEFUN.
-
ram authored
unknown values even though they are really fixed-values (and people might be depending on the check, like non-local RETURN-FROM.) Don't do an inline type check for the argument of a full call, even when we are "sure" that there is an error, since the user might want to fix the problem by redefining the callee, and not by changing the caller (or callers.) Spiffed up type error warnings to use the variable we are binding to as context when doing a local call. Also, instead of saying we "got NIL", we say we got an expression that didn't return. Changed type error checking to consistently flame about all losing uses of a continuation, instead of maybe only flaming about the first one, or even totally missing it if the first use we see is non-erroneous but hairy. Also, don't do type warnings on continuations with :DELETE TYPE-CHECK, since those are the result of hairy type checks.
-
ram authored
COMPILER-ERROR at this late date. Anyway, we should never run into these errors anway, since IR1tran now picks off bad constants. I reenabled i-vector byte-swapping. There was never any reason to disable it, since the use of TYPED-VREF was only in the direct copy case.
-
ram authored
-
- Oct 10, 1990
-
-
wlott authored
-
wlott authored
which included commits to RCS files with non-trunk default branches.
-
wlott authored
-
wlott authored
simple-vectors.
-
wlott authored
-
ram authored
change so that we don't "optimize" (< *foo* *foo*) to NIL.
-
wlott authored
are no longer simple-vectors.
-
wlott authored
that long, and fill in all the slots by popping the stack.
-
wlott authored
-
ram authored
-
- Oct 09, 1990
-
-
wlott authored
-
wlott authored
-
wlott authored
-
wlott authored
And use structure-length to find the length of a structure.
-
wlott authored
-
wlott authored
the magic function structure-ref and it's setf method.
-
wlott authored
simple-vectors. ,
-
ram authored
we know we have a non-complex vector. This ensures that ELT bound checking will respect the fill pointer.
-
ram authored
which might differ from the array dimension when the array is non-simple.
-