0.9.15.36: less intrusive step instrumentation
authorNikodemus Siivola <nikodemus@random-state.net>
Wed, 16 Aug 2006 19:05:45 +0000 (19:05 +0000)
committerNikodemus Siivola <nikodemus@random-state.net>
Wed, 16 Aug 2006 19:05:45 +0000 (19:05 +0000)
commit41d822d26e0ffee4be348ebf35e19caff0c858e1
tree102fb96126a227963227120605c107381831bea7
parent5ec5d0e068ab2b6435e0c841d686a95dbd58cbc4
0.9.15.36: less intrusive step instrumentation

 * INVOKE-EFFECTIVE-METHOD was missing a binding for the
   effective-method-form, causing potential multiple evaluation and
   also creating one source of confusion when step instrumenting CLOS
   code, manifesting as:

    Asserted type (MOD 536870911) conflicts with derived type
    (VALUES (OR FUNCTION SB-PCL::METHOD-CALL SB-PCL::FAST-METHOD-CALL)
            &OPTIONAL).

 * If the form being instrumented is a call to a known single-valued
   function we can instrument it in a way that doesn't kill the
   type-inference. This alone is enough to get rid of most warnings
   such as above.

 * Add rudimentary (B)acktrace command to the built-in stepper.
NEWS
src/code/step.lisp
src/compiler/ir1-step.lisp
src/pcl/boot.lisp
tests/compiler.impure.lisp
tests/type.impure.lisp
version.lisp-expr