GNU bug report logs -
#54816
29.0.50; Silent "Compiler-macro error for cl-member" when building from scratch
Previous Next
Reported by: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>
Date: Sat, 9 Apr 2022 14:11:02 UTC
Severity: normal
Tags: patch
Found in version 29.0.50
Fixed in version 29.1
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 54816 in the body.
You can then email your comments to 54816 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#54816
; Package
emacs
.
(Sat, 09 Apr 2022 14:11:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Kévin Le Gouguec <kevin.legouguec <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Sat, 09 Apr 2022 14:11:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
When building from scratch ("./autogen.sh && ./configure && make" from a
fresh clone), I spot the following error, which does not interrupt
compilation:
> make[2]: Entering directory '/home/peniblec/src/emacs/lisp'
> ELC international/titdic-cnv.elc
> make -C ../leim all EMACS="../src/bootstrap-emacs"
> make[3]: Entering directory '/home/peniblec/src/emacs/leim'
> GEN ../lisp/leim/quail/CCDOSPY.el
> […]
> GEN ../lisp/leim/leim-list.el
> /usr/bin/mkdir -p ../lisp/leim/ja-dic
> GEN ../lisp/leim/ja-dic/ja-dic.el
> INFO Processing OKURI-ARI entries
> INFO Processing POSTFIX entries
> INFO Processing PREFIX entries
> INFO Collecting OKURI-NASI entries
> INFO Collecting OKURI-NASI entries...
> […]
> INFO Collecting OKURI-NASI entries...done
> INFO Processing OKURI-NASI entries
> INFO Processing OKURI-NASI entries...
> […]
> INFO Processing OKURI-NASI entries...done
> Compiler-macro error for cl-member: Handler: cl--compiler-macro-member
> (excessive-variable-binding)
> Eager macro-expansion failure: (excessive-variable-binding)
> make[3]: Leaving directory '/home/peniblec/src/emacs/leim'
(For the avoidance of doubt: this is a -j1 run; the […] lines are
regular "GEN/INFO" messages)
As far as I can tell the resulting Emacs is mostly functional; I'm using
it to write this report and have not observed any problem so far.
I have not bisected the problem yet (I noticed it yesterday); I tried to
find a faster recipe than "git clean -fdx && ./autogen.sh && ./configure
&& make", e.g. variations of "touch foo && make bar" from leim/Makefile
and lisp/Makefile, but the error does not show up unless I rebuild
everything from scratch.
"make V=1" says that this is the command that runs when the error comes
(run from the leim subdirectory):
'../src/bootstrap-emacs' -batch --no-site-file --no-site-lisp -batch -l ja-dic-cnv \
-f batch-skkdic-convert -dir "./../lisp/leim/ja-dic" "SKK-DIC/SKK-JISYO.L"
Unfortunately running this after Emacs is built does not trigger the
error for me. The "simplest" recipe I have is:
git clean -dfx
./autogen.sh
./configure
make -j16 -C src bootstrap-emacs
cd leim
mkdir ../lisp/leim/ja-dic
'../src/bootstrap-emacs' -batch --no-site-file --no-site-lisp -batch -l ja-dic-cnv -f batch-skkdic-convert -dir "./../lisp/leim/ja-dic" "SKK-DIC/SKK-JISYO.L"
Hope someone can make sense of that, and this is not some setup-specific
thing; FWIW I'm seeing this on openSUSE Tumbleweed and Debian bullseye.
In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.33, cairo version 1.16.0)
of 2022-04-08 built on amdahl30
Repository revision: e9849939549010529e180ffb2509922f1bcc4843
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101003
System Description: openSUSE Tumbleweed
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#54816
; Package
emacs
.
(Sun, 10 Apr 2022 09:21:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 54816 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
tags 54816 patch
thanks
Kévin Le Gouguec <kevin.legouguec <at> gmail.com> writes:
>> Compiler-macro error for cl-member: Handler: cl--compiler-macro-member
>> (excessive-variable-binding)
>> Eager macro-expansion failure: (excessive-variable-binding)
That bit about excessive-variable-binding rang a bell; I dimly
remembered seeing a couple of commits increasing max-specpdl-size "not
too long ago". git-log turned these up:
* 2022-01-31 "Enlarge max-specpdl-size for generation of files in
.../admin/grammars" (be2566eeab)
* 2022-01-30 "Enlarge max-specpdl-size for generation of leim-list.el in
bootstrap" (46611aa468)
So here's a "monkey see; monkey do" patch that causes this error to go
away; no idea if it's The Right Thing™ though?
[max-specpdl-size.patch (text/x-patch, inline)]
diff --git a/leim/Makefile.in b/leim/Makefile.in
index 6cf0abb40c..4e70e8b7e9 100644
--- a/leim/Makefile.in
+++ b/leim/Makefile.in
@@ -131,6 +131,7 @@ ${leimdir}/ja-dic/ja-dic.el:
${leimdir}/ja-dic/ja-dic.el: $(srcdir)/SKK-DIC/SKK-JISYO.L
$(AM_V_GEN)$(RUN_EMACS) -batch -l ja-dic-cnv \
+ --eval "(setq max-specpdl-size 5000)" \
-f batch-skkdic-convert -dir "$(leimdir)/ja-dic" "$<"
${srcdir}/../lisp/language/pinyin.el: ${srcdir}/MISC-DIC/pinyin.map
Added tag(s) patch.
Request was from
Kévin Le Gouguec <kevin.legouguec <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Sun, 10 Apr 2022 09:21:02 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#54816
; Package
emacs
.
(Sun, 10 Apr 2022 12:44:01 GMT)
Full text and
rfc822 format available.
Message #13 received at 54816 <at> debbugs.gnu.org (full text, mbox):
Kévin Le Gouguec <kevin.legouguec <at> gmail.com> writes:
> So here's a "monkey see; monkey do" patch that causes this error to go
> away; no idea if it's The Right Thing™ though?
Looks like the right thing to me; pushed to Emacs 29 now.
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
bug marked as fixed in version 29.1, send any further explanations to
54816 <at> debbugs.gnu.org and Kévin Le Gouguec <kevin.legouguec <at> gmail.com>
Request was from
Lars Ingebrigtsen <larsi <at> gnus.org>
to
control <at> debbugs.gnu.org
.
(Sun, 10 Apr 2022 12:44:02 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Mon, 09 May 2022 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 3 years and 43 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.