Raise default max-specpdl-size and max-lisp-eval-depth

Recent changes have caused bootstrapping to fail for certain
configurations, and it was likely getting close to the limits
for others.  This change raises the limits to those previously
used when configured for nativecomp:

  max-specpdl-size raised from 1800 to 2500
  max-lisp-eval-depth raised from 800 to 1600

* src/eval.c (init_eval_once): Raise limits.
* doc/lispref/eval.texi (Eval):
* doc/lispref/variables.texi (Local Variables): Document new values.
This commit is contained in:
Mattias Engdegård 2022-09-14 14:36:24 +02:00
parent 37fe0cd358
commit cba866599c
3 changed files with 4 additions and 9 deletions

View file

@ -846,7 +846,7 @@ The depth limit counts internal uses of @code{eval}, @code{apply}, and
expressions, and recursive evaluation of function call arguments and
function body forms, as well as explicit calls in Lisp code.
The default value of this variable is 800. If you set it to a value
The default value of this variable is 1600. If you set it to a value
less than 100, Lisp will reset it to 100 if the given value is
reached. Entry to the Lisp debugger increases the value, if there is
little room left, to make sure the debugger itself has room to

View file

@ -374,7 +374,7 @@ that Lisp avoids infinite recursion on an ill-defined function.
@code{max-lisp-eval-depth} provides another limit on depth of nesting.
@xref{Definition of max-lisp-eval-depth,, Eval}.
The default value is 1600. Entry to the Lisp debugger increases the
The default value is 2500. Entry to the Lisp debugger increases the
value, if there is little room left, to make sure the debugger itself
has room to execute.
@end defopt

View file

@ -211,15 +211,10 @@ backtrace_thread_next (struct thread_state *tstate, union specbinding *pdl)
void
init_eval_once (void)
{
/* Don't forget to update docs (lispref node "Local Variables"). */
#ifndef HAVE_NATIVE_COMP
max_specpdl_size = 1800; /* See bug#46818. */
max_lisp_eval_depth = 800;
#else
/* Original values increased for comp.el. */
/* Don't forget to update docs
(lispref nodes "Local Variables" and "Eval"). */
max_specpdl_size = 2500;
max_lisp_eval_depth = 1600;
#endif
Vrun_hooks = Qnil;
pdumper_do_now_and_after_load (init_eval_once_for_pdumper);
}