Subject: Re: bug#55414: 29.0.50; Byte compilation error for the modus-themes

From: Alan Mackenzie <[email-masked]>
Date: Sun, 22 May 2022 13:10:20 +0000

Hello, Eli, Lars, and Prot.

On Mon, May 16, 2022 at 18:56:25 +0300, Eli Zaretskii wrote:
> > From: Protesilaos Stavrou <[email-masked]>
> > Cc: [email-masked], [email-masked]
> > Date: Mon, 16 May 2022 17:52:54 +0300

> > >> In recent months I've increased max-specpdl-size to 5000 in
> > >> emacs-lisp/comp.el, and also to 5000 (default is 2500) in
> > >> leim/Makefile.in for the generation of leim-list.el.  Also
> > >> max-specpdl-size to 5000 in admin/grammars/Makefile.in.

> > > What value does modus-themes need?

> > These are the lowest:

> >     (setq max-lisp-eval-depth 2800
> >           max-specpdl-size 2900)

> If all we need is to increase the default from 2500 to 3000, I don't
> mind.

Progress on this bug seems to have stalled.

There are actually two (or maybe several) pairs of default values for
max-lisp-eval-depth and max-specpdl-size.  They are set in src/eval.c in
init_eval_once.  For when native compilation is enabled the defaults are
1600/2500.  When it's not, they're 800/1800.

modus-themes needs just short of 3000/3000, presumably when native
compilation is enabled.

How about setting both pairs of defaults to 3000/3000 (i.e. no longer
distinguishing between native compilation being set or not), and closing
the bug?  It is, in any case, our medium term goal to have native
compilation enabled by default.  If everybody is OK on this increase, I'm
willing to do the patching.

I'm still not very clear on the disadvantages of increasing
max-lisp-eval-depth and max-specpdl-size substantially (say by 50% or
100%, not by a factor of 10 or so).  There are quite a lot of libraries
(maybe the order of 10) which have their own (increased) values for one
or both of these limit variables.  I don't see why it wouldn't be
beneficial to use larger defaults, and purge these "private" settings.
We may even be able to do this with the proposed 3000/3000 defaults.

-- 
Alan Mackenzie (Nuremberg, Germany).