Tcl_SetRecursionLimit(3TCL) Tcl Library Procedures Tcl_SetRecursionLimit(3TCL)______________________________________________________________________________NAMETcl_SetRecursionLimit - set maximum allowable nesting depth in inter‐
preter
SYNOPSIS
#include <tcl.h>
int
Tcl_SetRecursionLimit(interp, depth)
ARGUMENTS
Tcl_Interp *interp (in) Interpreter whose recursion limit is
to be set. Must be greater than zero.
int depth (in) New limit for nested calls to Tcl_Eval
for interp.
_________________________________________________________________DESCRIPTION
At any given time Tcl enforces a limit on the number of recursive calls
that may be active for Tcl_Eval and related procedures such as
Tcl_GlobalEval. Any call to Tcl_Eval that exceeds this depth is
aborted with an error. By default the recursion limit is 1000.
Tcl_SetRecursionLimit may be used to change the maximum allowable nest‐
ing depth for an interpreter. The depth argument specifies a new limit
for interp, and Tcl_SetRecursionLimit returns the old limit. To read
out the old limit without modifying it, invoke Tcl_SetRecursionLimit
with depth equal to 0.
The Tcl_SetRecursionLimit only sets the size of the Tcl call stack: it
cannot by itself prevent stack overflows on the C stack being used by
the application. If your machine has a limit on the size of the C
stack, you may get stack overflows before reaching the limit set by
Tcl_SetRecursionLimit. If this happens, see if there is a mechanism in
your system for increasing the maximum size of the C stack.
KEYWORDS
nesting depth, recursion
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌────────────────────┬─────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├────────────────────┼─────────────────┤
│Availability │ runtime/tcl-8 │
├────────────────────┼─────────────────┤
│Interface Stability │ Uncommitted │
└────────────────────┴─────────────────┘
NOTES
Source for Tcl is available on http://opensolaris.org.
Tcl 7.0 Tcl_SetRecursionLimit(3TCL)