Up: Function Names


5.3.3.1 Entry Point Details

Sometimes the compiler introduces new functions that are used to implement a user function, but are not directly specified in the source. This is mostly done for argument type and count checking.

The debugger will normally show these entry point functions as if they were the normal main entry point, but more detail can be obtained by setting sb-debug:*show-entry-point-details* to true; this is primarily useful for debugging SBCL itself, but may help pinpoint problems that occur during lambda-list processing.

With recursive functions, an additional :EXTERNAL frame may appear before the frame representing the first call to the recursive function. This is a consequence of the way the compiler works: there is nothing odd with your program. You will also see :CLEANUP frames during the execution of unwind-protect cleanup code. The :EXTERNAL and :CLEANUP above are entry-point types, visible only if sb-debug:*show-entry-point-details* os true.