0.8.4.2:
authorAlexey Dejneka <adejneka@comail.ru>
Fri, 3 Oct 2003 02:51:56 +0000 (02:51 +0000)
committerAlexey Dejneka <adejneka@comail.ru>
Fri, 3 Oct 2003 02:51:56 +0000 (02:51 +0000)
commit61c18727668ff0c3263a3d363e609d4522d545cc
tree74acfc84217f0daffaba1b7b761dcdddd5c6b65c
parent2675adcb29d689ee6d270f52658af17f2deeaf77
0.8.4.2:
        * Changes in type checking:
        ... test for NIL has zero cost;
        ... add NULL to types of optional arguments (fix bug 261);
        ... change implementation of "external type check":
            ... new kind of CAST-TYPE-CHECK;
            ... detect blocks of externally checkable CASTs by
                backward walking of a component;
            ... merge unsafe CASTs in IR1-FINALIZE ( bug 282);
            ... consider known call of a function without applicable
                :FAST-SAFE templates to be full;
        * print CTRAN numbers in component dumps;
        * fix bug 214, also reported by rydis on #lisp: in
          NOTE-REJECTED-TEMPLATES ignore :FAST-SAFE templates for
          :SAFE policy;
        * DO-NODE-BACKWARDS: stop when faced with a CTRAN with no use
          (bug reported by Paul Dietz);
        * TWO-ARG-DERIVE-TYPE: when deriving type for constant
          arguments, if the function signals an error return type NIL
          (bug reported by Paul Dietz);
        * fix TRUNCATE optimizer for (+ -) arguments (bugs 293, 294
          reported by Paul Dietz);
        * tests/compiler.impure-cload.lisp: switch to CL-USER package
          before deleting temporal one.
15 files changed:
BUGS
NEWS
src/compiler/checkgen.lisp
src/compiler/debug.lisp
src/compiler/ir1final.lisp
src/compiler/ir1util.lisp
src/compiler/ltn.lisp
src/compiler/macros.lisp
src/compiler/node.lisp
src/compiler/srctran.lisp
tests/arith.pure.lisp
tests/compiler.impure-cload.lisp
tests/compiler.pure-cload.lisp
tests/compiler.pure.lisp
version.lisp-expr