# Tcl_SetRecursionLimit - set maximum allowable nesting depth in interpreter

## 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 nesting 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_SetRecursionDepth with depth equal to 0.

## KEYWORDS

nesting depth, recursion