- Aug 08, 2000
-
-
dtc authored
correctly calculate the CPL for the condition classes.
-
- Aug 07, 2000
- Aug 06, 2000
-
-
dtc authored
layouts within the layout-inherits vector. This ensures that the compiler can generate inline type tests for hierarchical classes. o Modify the definition of the stream class to be hierarchical. o Have the condition classes correctly order their layout-inherits so that the hierarchical condition class is placed at it specified depth. o Enhance the compiler instance typep transform to generate inline type tests for hierarchical classes, not just for structures.
-
dtc authored
structure-class direct superclasses. This handles both normal structures with a single superclass, and other structure like classes such as conditions and streams which may have multiple superclasses.
-
dtc authored
-
- Aug 04, 2000
-
-
dtc authored
-
- Aug 03, 2000
-
-
pw authored
and introduces code to "inform-type-system-about-std-class". The effect of this new code is to put minimal class definitions into the compile-time environment to prevent undefined-type warnings. These definitions are replaced with the correct class defs at load-time.
-
- Aug 01, 2000
-
-
pw authored
that the named generic-function exists. This to suppress undefined function warnings.
-
- Jul 31, 2000
- Jul 23, 2000
-
-
dtc authored
of bytes returned is less than required, and until either done or zero bytes is returned indicating an EOF.
-
dtc authored
misc functions synonym-misc, two-way-misc, and concatenated-misc. These streams encapsulate other input streams which may have an input buffer so they need to call unread-char and clear-input on the encapsulated stream rather than directly calling the encapsulated streams misc method as the misc methods are below the layer of the input buffer.
-
- Jul 13, 2000
-
-
dtc authored
The new variables were being created by copying the old leafs which incorrectly copied over any refs, or sets etc, which should have been cleared in the new leafs. o Fix the handling of the 'special identifier in the proclaim IR1 translator which had been incorrectly using the identifier rather than the variable name when updating the hash tables.
-
- Jul 11, 2000
-
-
dtc authored
catch/throw, as the compiler lossage in the closure over tags has been fixed.
-
- 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).
-
dtc authored
o copy-to-system-area, copy-from-system-area, system-area-copy, and bit-bash-copy, all return the undefined value rather then type null, so declare it as type t.
-
dtc authored
derived function return type and the declared return type. Such conflicts can cause lossage so warrant reporting.
-
dtc authored
represents an unknown number of values, if Cont's destination receives only a single value, generate a :hairy type check for the single-values-type of the asserted type.
-
- Jul 07, 2000
- Jul 06, 2000
-
-
dtc authored
causing problems: o Redefine coerce-to-values to convert a single value type into (values type), rather than the former definition (values type &rest t). A single value type such as fixnum is now equivalent to (values fixnum). Values-type-union and values-type-intersection will canonicalise values types with a single value such as (values fixnum) back to a single value type such as fixnum. o Now when the compiler makes assertions for the first value of continuations that may be generating multiple values it asserts the type as (values type &rest t), or as (value &optional type &rest t) if it is not sure that the continuation does generate a value. o Enhance the type check generation to better handle the now common values types with optional and rest arguments. Add the new function Values-types-asserted which converts asserted optional and rest arguments to required arguments that have been proven to be delivered, Thus an assertion such as (values &optional fixnum &rest t) will generate a fixnum type check if the proven type if (values t). o The compiler is now far more likely to pickup attempts to use an assertion to select a subset of values. For example (the (values fixnum) (values x y)) will generated a compiler warning. o Update single values type assertions where appropriate to clarify that the received values may be optional or that multiple values may be received. For example, a macro argument which had been asserted to be a list via (the list ,...) would now be asserted to be (the (values &optional list &rest t)) etc. o Have the IR1 translator for THE convert single value types into (values &optional type &rest t) so that code such as (the fixnum (values x y)) will still work acceptably. This does not restrict the possible type assertions as the values types may be used and are not modified.
-
dtc authored
value types, using the new support function values-types-defaulted.
-
dtc authored
values-type, because the continuation is flagged for a type check if any of the types needs to be checked and some may not need checking. o Split the function no-function-values-types out into a call to values-type followed by the new function no-function-types as this later functionality is useful on its own.
-
dtc authored
optionally the three values from function-lambda-expression.
-
dtc authored
-
dtc authored
rather than just fixnum.
-
dtc authored
a single value anyway!
-
dtc authored
using a single value type assertion following values '(the index (values ...)), use a multiple values types assertion '(the (values index t) ...), which is simpler for the compiler.
-
dtc authored
using a single value type assertion following values '(the index (values ...)), use a multiple values types assertion '(the (values index t) ...), which is simpler for the compiler.
-
dtc authored
incompatbile with the proven type of ARG, such as when ARG returns multiple values and CONT has a single value assertion. o After propagate-let-args, only delete the let when none of the variables are set, otherwise an unreferenced variable that is set can end up without a home which would be unexpected by later stages of the compiler. o Correct and enhance the values deftransform to adjust the node continuation asserted type which may otherwise be inconsistent with the new single value type, and set the node derived type to the received single-value-type.
-
dtc authored
respectively to consider just the received single-value-type, avoiding unexpectedly values types.
-
dtc authored
value values type.
-
dtc authored
(complex float) types even when passed a (complex rational) or (complex integer).
-
dtc authored
only the first value.
-
dtc authored
with the declared return type; some paths were returning only a single value. o Correct the declared result type of substitute-into to declare both return values.
-
dtc authored
receiving the only the first value.
-