dwww Home | Manual pages | Find package

Tcl_SetRecursionLimit(3tcl) Tcl Library Procedures Tcl_SetRecursionLimit(3tcl)

______________________________________________________________________________

NAME
       Tcl_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

Tcl                                   7.0          Tcl_SetRecursionLimit(3tcl)

Generated by dwww version 1.14 on Thu Jan 23 00:52:53 CET 2025.