Variable: max-specpdl-size

max-specpdl-size is a customizable variable defined in eval.c.

Value

1800

Documentation

Limit on number of Lisp variable bindings and unwind-protects.

If Lisp code tries to use more bindings than this amount, an error is signaled.

You can safely increase this variable substantially if the default value proves inconveniently small. However, if you increase it too much, Emacs could run out of memory trying to make the stack bigger. Note that this limit may be silently increased by the debugger if debug-on-error or debug-on-quit is set.

"spec" is short for "special variables", i.e., dynamically bound
variables. "PDL" is short for "push-down list", which is an old term for "stack".

Probably introduced at or before Emacs version 15.

Source Code

// Defined in /usr/src/emacs/src/eval.c
  DEFVAR_INT ("max-specpdl-size", max_specpdl_size,
	      doc: /* Limit on number of Lisp variable bindings and `unwind-protect's.

If Lisp code tries to use more bindings than this amount, an error is
signaled.

You can safely increase this variable substantially if the default
value proves inconveniently small.  However, if you increase it too
much, Emacs could run out of memory trying to make the stack bigger.
Note that this limit may be silently increased by the debugger if
`debug-on-error' or `debug-on-quit' is set.

\"spec\" is short for \"special variables\", i.e., dynamically bound
variables.  \"PDL\" is short for \"push-down list\", which is an old
term for \"stack\".  */);