:step

Top-level Command

Arguments: &rest args

If not in ldb mode (ldb does not appear in the prompt), this command initiates or affects stepping, as we now describe. See below for behavior in ldb mode.

The :step top-level command implements the functionality of the step macro.

With an argument of t, stepping is enabled globally, otherwise the arguments are assumed to be symbols naming functions wherein stepping should occur. Any non-functions supplied to :step will be flagged as invalid arguments, but an error will not be signaled.

Called with no arguments or nil as an argument while not stepping, stepping is disabled. Use the command :sover to get out of stepping in order to turn stepping off. :step and :step nil have no effect while stepping is going on. Stepped functions should not be compiled. Stepping compiled functions provides little useful information.

See also :sover and :scont.

The minimal abbreviation of :step is :st.

:step in ldb mode

When in ldb-step mode, the step command recognizes several sub-commands as its first argument:

SubcommandAction
:step overStepping is continued, once per command issue, through the code, following branches but not following function calls into deeper level functions.
:step intoJust like :step over except that if a call point is encountered, the new function is breakpointed at or near pc=0. A primcall (a call to a runtime system function) is never stepped into.
:step thisNo actual stepping is done, but the current instruction is re-printed in disassembled form.
:step returnThe currently-debugged function continues to its end, and the caller of the function is breakpointed just after the call.
:step contContinues through the current instruction even if there is a breakpoint in it.
:step typePrints information on what kind of stepping is being remembered for the key. :none is printed until the first occurrence of either a :step over or :step into is done. See The Lisp DeBug (ldb) stepper in debugging.htm.

To use :step in ldb mode, you must be at a breakpoint. Thus:

cl-user(1): :ldb t
[ldb] cl-user(2): :step into
You must be stopped at a breakpoint before ldb-stepping can begin.
[ldb] cl-user(3):

See with-breakpoints-installed and the :break.

See The Lisp DeBug (ldb) stepper in debugging.htm for information on ldb stepping.

See top-level.htm for more information on top-level commands. See debugging.htm for information on the debugger and examples of stepping.

The documentation is described in introduction.htm and the index is in index.htm.

Copyright (c) 1998-2000, Franz Inc. Berkeley, CA., USA. All rights reserved.

Created 2000.10.5.