[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Tracing internal functions

>Occasionally, when tracing an internal function (defined by FLET or
>LABELS), I have a problem.  The trace is installed using the TRACE
>feature from the system menu.  The func spec is of the form
>    (:INTERNAL outer-fcn integer inner-fcn)
>The error msg generated, before any arg printing, is
>    The first argument given to the SYS:LDB-INTERNAL instruction, NIL,
>    was not a number.
>The function that is blowing up is SI:INTERPRETER-TRAMPOLINE
>Could the problem be that the passing of the context(lexical) pointer
>as an hidden argument sometimes fulls the trace logic?  BTW, I am not
>making closures of the internal functions -- I am using them as ordinary
>functions that can see variables bound above.
>An ideas or patches to fix this problem would be appreciated.
My only advice is that if you are still in the stage where you need to trace
the functions, move them out of FLET and LABELS and define them at the top
level.  This makes it substantially easier to debug.

Steve Jameson                 General Electric Aerospace / Martin Marietta
sjameson@atl.ge.com           Advanced Technology Laboratories
                              Moorestown, New Jersey              
**  . . . but I do not love the sword for its sharpness, nor the arrow    **
**  for its swiftness, nor the warrior for his glory.  I love only that   **
**  which they defend . . .                                               **
**    -- Faramir, "The Two Towers"                                        **