From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Andrea Corallo Newsgroups: gmane.emacs.devel Subject: Re: Building a release tarball generates trampoline files in eln-cache Date: Fri, 05 Nov 2021 15:39:08 +0000 Message-ID: References: <8335pay5j0.fsf@gnu.org> <83pmsew854.fsf@gnu.org> <44da1bfa-9e13-07e9-10fe-27018f7d1369@cornell.edu> <83h7dqw0ga.fsf@gnu.org> <83h7dkm8n4.fsf@gnu.org> <831r4lid0n.fsf@gnu.org> <83zgr9gvvp.fsf@gnu.org> <83y26tgupl.fsf@gnu.org> <83bl3ogpob.fsf@gnu.org> <83r1c6v36p.fsf@gnu.org> <837ddqjt16.fsf@gnu.org> <83wnlqibkx.fsf@gnu.org> <83bl30fa3m.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="23540"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: Stefan Monnier , emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Nov 05 16:41:00 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mj1Kt-0005ri-W7 for ged-emacs-devel@m.gmane-mx.org; Fri, 05 Nov 2021 16:41:00 +0100 Original-Received: from localhost ([::1]:51884 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mj1Ks-0002UT-6K for ged-emacs-devel@m.gmane-mx.org; Fri, 05 Nov 2021 11:40:58 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:43090) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mj1JN-00015C-Qc for emacs-devel@gnu.org; Fri, 05 Nov 2021 11:39:25 -0400 Original-Received: from mx.sdf.org ([205.166.94.24]:51403) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mj1JI-00061S-3o; Fri, 05 Nov 2021 11:39:25 -0400 Original-Received: from ma.sdf.org (ma.sdf.org [205.166.94.33]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 1A5Fd8If003693 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits) verified NO); Fri, 5 Nov 2021 15:39:09 GMT In-Reply-To: <83bl30fa3m.fsf@gnu.org> (Eli Zaretskii's message of "Thu, 04 Nov 2021 13:12:29 +0200") Received-SPF: pass client-ip=205.166.94.24; envelope-from=akrl@sdf.org; helo=mx.sdf.org X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:278780 Archived-At: Eli Zaretskii writes: >> From: Stefan Monnier >> Cc: Andrea Corallo , emacs-devel@gnu.org >> Date: Tue, 02 Nov 2021 16:26:22 -0400 >>=20 >> Eli Zaretskii [2021-11-02 21:47:42] wrote: >> >> From: Andrea Corallo >> >> Cc: emacs-devel@gnu.org >> >> Date: Tue, 02 Nov 2021 19:22:56 +0000 >> >> > This shows errors in the *Compile Log* buffer(??) >> >> > >> >> > lisp/emacs-lisp/seq.elc: Error: Symbol=E2=80=99s function definit= ion is void: gv-setter >> >> > lisp/term/xterm.elc: Error: Symbol=E2=80=99s function definition = is void: t >> >> > >> >> > If I delete seq.elc, the problem goes away. >> >> > >> >> > How do I investigate this? >> >>=20 >> >> I guess a start is to run in gdb to see where the function definition= of >> >> gv-setter was last time changed (if ever). >> >>=20 >> >> I guess `gv-setter' was compiled and dumped, therefore its definition >> >> it's expected to be revived by 'load_comp_unit' called from >> >> pdumper.c:5355 while Emacs is starting-up. >> > >> > Thanks, will try. >> > >> > Any idea why the errors show in *Compile Log* buffer? Where did that >> > buffer come from? >>=20 >> I'd guess that it's when `cl-generic.el` calls `byte-compile` (both >> seq.el and xterm.el use `cl-defmethod`). >> `cl-generic.el` is also one of the rare users of `gv-setter`. >> OTOH, `gv-setter` normally doesn't appear within the code that >> `cl-generic.el` passes to `byte-compile`, instead `gv-setter` is called >> directly by `cl-generic.el`, so my guess might be off. > > Maybe, maybe not. > > The crucial detail here is that I invoke "emacs -nw" (are you using > "-nw" in your attempts to reproduce?). What happens then is that we > load the terminal-specific support file, in this case xterm.elc, > during startup. And since xterm.el is not preloaded, it is not > natively-compiled by the build process. So once we load it, Emacs > tries to native-compile it, and all of its prerequisites, and that's > where those errors and that compile log buffer come from, I guess. > > I tried to mark xterm.el and seq.el as not for native-compile, but > that didn't help. However, if I manually compile gv.el natively into > a *.eln file, the problem goes away. > > So why would Emacs want to native-compile gv.el in this case,=20 Apparently emacs (-nw -Q) wants to compile gv.el because once started `gv-get' is used (still in byte compiled form). This is the backtrace from where we take the decision: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D #0 maybe_defer_native_compilation (function_name=3DXIL(0x7ffff3c4f3e8), de= finition=3DXIL(0xb9f5ed)) at comp.c:4848 #1 0x000000000055b053 in Fdefalias (symbol=3DXIL(0x7ffff3c4f3e8), definiti= on=3DXIL(0xb9f5ed), docstring=3DXIL(0)) at data.c:830 #2 0x00000000005766af in eval_sub (form=3D) at lisp.h:2108 #3 0x00000000005a51b6 in readevalloop (readcharfun=3DXIL(0x68a0), infile0= =3D0x7fffffffb860, sourcename=3DXIL(0xc4e604), printflag=3Dfalse, unibyte= =3D,=20 readfun=3DXIL(0), start=3DXIL(0), end=3D) at lread.c:2320 #4 0x00000000005a5fc7 in Fload (file=3D, noerror=3D, nomessage=3DXIL(0x30), nosuffix=3D, must_suffix=3D<= optimized out>) at lisp.h:1008 #5 0x00000000005a65aa in save_match_data_load (file=3DXIL(0x7ffff47519cc),= noerror=3Dnoerror@entry=3DXIL(0), nomessage=3Dnomessage@entry=3DXIL(0x30),= =20 nosuffix=3Dnosuffix@entry=3DXIL(0), must_suffix=3Dmust_suffix@entry=3DX= IL(0x30)) at lread.c:1623 #6 0x00000000005736a5 in Fautoload_do_load (fundef=3DXIL(0x7ffff475199b), = funname=3DXIL(0x7ffff3c4f3e8), macro_only=3DXIL(0)) at lisp.h:1008 #7 0x0000000000573966 in Ffuncall (nargs=3D3, args=3Dargs@entry=3D0x7fffff= ffba28) at lisp.h:1008 #8 0x00000000005b75c0 in exec_byte_code (bytestr=3D, vector= =3D, maxdepth=3D, args_template=3D,=20 nargs=3D, args=3D) at bytecode.c:632 #9 0x00000000005738b9 in Ffuncall (nargs=3D3, args=3D0x7fffffffbd10) at ev= al.c:3042 #10 0x0000000000573d08 in Fapply (nargs=3D2, args=3D0x7fffffffbda0) at eval= .c:2656 #11 0x0000000000577ed7 in apply1 (arg=3D, fn=3D) at lisp.h:1376 #12 Fmacroexpand (form=3DXIL(0xd49813), environment=3DXIL(0xcbe143)) at eva= l.c:1139 #13 0x0000000000573a63 in Ffuncall (nargs=3D3, args=3D0x7fffffffbe30) at li= sp.h:2108 #14 0x00007ffff3f55c92 in F6d6163726f6578702d6d6163726f657870616e64_macroex= p_macroexpand_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #15 0x0000000000573a63 in Ffuncall (nargs=3D3, args=3D0x7fffffffbf70) at li= sp.h:2108 #16 0x00007ffff3f56f72 in F6d6163726f6578702d2d657870616e642d616c6c_macroex= p__expand_all_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #17 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffc0f0) at li= sp.h:2108 #18 0x00007ffff3f54f69 in F6d6163726f6578702d2d616c6c2d666f726d73_macroexp_= _all_forms_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #19 0x0000000000573a63 in Ffuncall (nargs=3D3, args=3D0x7fffffffc1e0) at li= sp.h:2108 #20 0x00007ffff3f56cfb in F616e6f6e796d6f75732d6c616d626461_anonymous_lambd= a_5 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #21 0x00007ffff3f5789f in F6d6163726f6578702d2d657870616e642d616c6c_macroex= p__expand_all_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #22 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffc420) at li= sp.h:2108 #23 0x00007ffff3f54f69 in F6d6163726f6578702d2d616c6c2d666f726d73_macroexp_= _all_forms_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #24 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffc4f0) at li= sp.h:2108 #25 0x00007ffff3f575e0 in F6d6163726f6578702d2d657870616e642d616c6c_macroex= p__expand_all_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #26 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffc6a0) at li= sp.h:2108 #27 0x00007ffff3f54f69 in F6d6163726f6578702d2d616c6c2d666f726d73_macroexp_= _all_forms_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #28 0x0000000000573a63 in Ffuncall (nargs=3D3, args=3D0x7fffffffc7e0) at li= sp.h:2108 #29 0x00007ffff3f574c6 in F6d6163726f6578702d2d657870616e642d616c6c_macroex= p__expand_all_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #30 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffc920) at li= sp.h:2108 #31 0x00007ffff3f54f69 in F6d6163726f6578702d2d616c6c2d666f726d73_macroexp_= _all_forms_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #32 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffc9f0) at li= sp.h:2108 #33 0x00007ffff3f575e0 in F6d6163726f6578702d2d657870616e642d616c6c_macroex= p__expand_all_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #34 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffcba0) at li= sp.h:2108 #35 0x00007ffff3f54f69 in F6d6163726f6578702d2d616c6c2d666f726d73_macroexp_= _all_forms_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #36 0x0000000000573a63 in Ffuncall (nargs=3D3, args=3D0x7fffffffcce0) at li= sp.h:2108 #37 0x00007ffff3f574c6 in F6d6163726f6578702d2d657870616e642d616c6c_macroex= p__expand_all_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #38 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffcdf0) at li= sp.h:2108 #39 0x00007ffff3f57974 in F6d6163726f657870616e642d616c6c_macroexpand_all_0= () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/mac= roexp-2c3e1495-8e8af7d5.eln #40 0x0000000000573a63 in Ffuncall (nargs=3D3, args=3D0x7fffffffce90) at li= sp.h:2108 #41 0x00007ffff2c43b7f in F627974652d636f6d70696c652d70726570726f63657373_b= yte_compile_preprocess_0 () from .../emacs-28.0.60/native-lisp/28.0.60-e950671c/bytecomp-12882072-29= d9ad62.eln #42 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffcf60) at li= sp.h:2108 #43 0x00007ffff2c469c9 in F616e6f6e796d6f75732d6c616d626461_anonymous_lambd= a_50 () from .../emacs-28.0.60/native-lisp/28.0.60-e950671c/bytecomp-12882072-29= d9ad62.eln #44 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffd068) at li= sp.h:2108 #45 0x00007ffff2c46f30 in F627974652d636f6d70696c65_byte_compile_0 () from .../emacs-28.0.60/native-lisp/28.0.60-e950671c/bytecomp-12882072-29= d9ad62.eln #46 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffd1b0) at li= sp.h:2108 #47 0x00007ffff4275860 in F636c2d2d67656e657269632d6765742d6469737061746368= 6572_cl__generic_get_dispatcher_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/cl-= generic-be68ad15-12e9508b.eln #48 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffd2d0) at li= sp.h:2108 #49 0x00007ffff4275b4c in F636c2d2d67656e657269632d6d616b652d6e6578742d6675= 6e6374696f6e_cl__generic_make_next_function_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/cl-= generic-be68ad15-12e9508b.eln #50 0x0000000000573a63 in Ffuncall (nargs=3D4, args=3D0x7fffffffd3a0) at li= sp.h:2108 #51 0x00007ffff4275a1f in F636c2d2d67656e657269632d6d616b652d66756e6374696f= 6e_cl__generic_make_function_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/cl-= generic-be68ad15-12e9508b.eln #52 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffd4e0) at li= sp.h:2108 #53 0x00007ffff4274a3b in F636c2d67656e657269632d646566696e652d6d6574686f64= _cl_generic_define_method_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/cl-= generic-be68ad15-12e9508b.eln #54 0x0000000000573a63 in Ffuncall (nargs=3D6, args=3Dargs@entry=3D0x7fffff= ffd648) at lisp.h:2108 #55 0x00000000005b75c0 in exec_byte_code (bytestr=3D, vector= =3D, maxdepth=3D, args_template=3D,=20 nargs=3D, args=3D) at bytecode.c:632 #56 0x00000000005766af in eval_sub (form=3D) at lisp.h:2108 #57 0x00000000005a51b6 in readevalloop (readcharfun=3DXIL(0x68a0), infile0= =3D0x7fffffffdb00, sourcename=3DXIL(0xd09114), printflag=3Dfalse, unibyte= =3D,=20 readfun=3DXIL(0), start=3DXIL(0), end=3D) at lread.c:2320 #58 0x00000000005a5fc7 in Fload (file=3D, noerror=3D, nomessage=3DXIL(0x30), nosuffix=3D, must_suffix=3D<= optimized out>) at lisp.h:1008 #59 0x00007ffff4208cb5 in F616e6f6e796d6f75732d6c616d626461_anonymous_lambd= a_48 () #54 0x0000000000573a63 in Ffuncall (nargs=3D6, args=3Dargs@entry=3D0x7fffff= ffd648) at lisp.h:2108 #55 0x00000000005b75c0 in exec_byte_code (bytestr=3D, vector= =3D, maxdepth=3D, args_template=3D,=20 nargs=3D, args=3D) at bytecode.c:632 #56 0x00000000005766af in eval_sub (form=3D) at lisp.h:2108 #57 0x00000000005a51b6 in readevalloop (readcharfun=3DXIL(0x68a0), infile0= =3D0x7fffffffdb00, sourcename=3DXIL(0xd09114), printflag=3Dfalse, unibyte= =3D,=20 readfun=3DXIL(0), start=3DXIL(0), end=3D) at lread.c:2320 #58 0x00000000005a5fc7 in Fload (file=3D, noerror=3D, nomessage=3DXIL(0x30), nosuffix=3D, must_suffix=3D<= optimized out>) at lisp.h:1008 #59 0x00007ffff4208cb5 in F616e6f6e796d6f75732d6c616d626461_anonymous_lambd= a_48 () --Type for more, q to quit, c to continue without paging-- from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/fac= es-b9447c93-7f74610c.eln #60 0x0000000000573a63 in Ffuncall (nargs=3D2, args=3D0x7fffffffdc90) at li= sp.h:2108 #61 0x00007ffff4208abc in F7474792d66696e642d74797065_tty_find_type_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/fac= es-b9447c93-7f74610c.eln #62 0x0000000000573a63 in Ffuncall (nargs=3D3, args=3D0x7fffffffddb0) at li= sp.h:2108 #63 0x00007ffff4208ec7 in F7474792d72756e2d7465726d696e616c2d696e697469616c= 697a6174696f6e_tty_run_terminal_initialization_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/fac= es-b9447c93-7f74610c.eln #64 0x0000000000573a63 in Ffuncall (nargs=3D4, args=3D0x7fffffffdeb0) at li= sp.h:2108 #65 0x00007ffff3d881e2 in F636f6d6d616e642d6c696e65_command_line_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/sta= rtup-bbc6ea72-8e089fac.eln #66 0x0000000000573a63 in Ffuncall (nargs=3D1, args=3D0x7fffffffdfb8) at li= sp.h:2108 #67 0x00007ffff3d82ca9 in F6e6f726d616c2d746f702d6c6576656c_normal_top_leve= l_0 () from .../emacs-28.0.60/src/../native-lisp/28.0.60-e950671c/preloaded/sta= rtup-bbc6ea72-8e089fac.eln #68 0x00000000005769b9 in eval_sub (form=3D) at lisp.h:2108 #69 0x0000000000578697 in Feval (form=3DXIL(0x7ffff479b3d3), lexical=3D) at eval.c:2330 #70 0x00000000005728f7 in internal_condition_case (bfun=3Dbfun@entry=3D0x4e= 0580 , handlers=3Dhandlers@entry=3DXIL(0x90), hfun=3Dhfun@entr= y=3D0x4e6ed0 ) at eval.c:1453 #71 0x00000000004e1374 in top_level_1 (ignore=3Dignore@entry=3DXIL(0)) at l= isp.h:1008 #72 0x0000000000572831 in internal_catch (tag=3D, func=3Dfun= c@entry=3D0x4e1330 , arg=3Darg@entry=3DXIL(0)) at eval.c:1184 #73 0x00000000004e0d59 in command_loop () at lisp.h:1008 #74 0x00000000004e6a0d in recursive_edit_1 () at keyboard.c:720 #75 0x00000000004e6daa in Frecursive_edit () at keyboard.c:803 #76 0x000000000042a6f1 in main (argc=3D, argv=3D) at emacs.c:2310 Lisp Backtrace: eval.c:122: Emacs fatal error: assertion failed: pdl->kind =3D=3D SPECPDL_B= ACKTRACE Breakpoint 1, terminate_due_to_signal (sig=3Dsig@entry=3D6, backtrace_limit= =3Dbacktrace_limit@entry=3D2147483647) at emacs.c:400 400 signal (sig, SIG_DFL); =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D > and why trying that causes this problem? Still unclear. After Emacs decideds gv.el should be compiled we require comp.el. Probably as a consequence of that we queue for native compilation also (in order): cl-lib.el, seq.el, warnings.el. Then the error. Andrea