From: Mattias EngdegÄrd Date: Wed, 14 Sep 2022 12:36:24 +0000 (+0200) Subject: Raise default max-specpdl-size and max-lisp-eval-depth X-Git-Tag: emacs-29.0.90~1856^2~514 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=cba866599c23a64018f820e3c34c4a6817d7313e;p=emacs.git 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. --- diff --git a/doc/lispref/eval.texi b/doc/lispref/eval.texi index ed3cf56e098..6e29a5403f1 100644 --- a/doc/lispref/eval.texi +++ b/doc/lispref/eval.texi @@ -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 diff --git a/doc/lispref/variables.texi b/doc/lispref/variables.texi index 80d6a01412b..975e945b343 100644 --- a/doc/lispref/variables.texi +++ b/doc/lispref/variables.texi @@ -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 diff --git a/src/eval.c b/src/eval.c index 56b42966623..bd414fb8687 100644 --- a/src/eval.c +++ b/src/eval.c @@ -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); }