GNU bug report logs - #74490
31.0.50; make bootstrap fails

Previous Next

Package: emacs;

Reported by: Vincenzo Pupillo <v.pupillo <at> gmail.com>

Date: Sat, 23 Nov 2024 12:23:02 UTC

Severity: normal

Tags: patch

Merged with 73855, 74491

Fixed in versions 31.1, 31.0.50

Done: Stefan Kangas <stefankangas <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


Message #11 received at 74490 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stefan Kangas <stefankangas <at> gmail.com>, Sam James <sam <at> gentoo.org>,
 Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 74490 <at> debbugs.gnu.org, v.pupillo <at> gmail.com
Subject: Re: bug#74490: 31.0.50; make bootstrap fails
Date: Sat, 23 Nov 2024 16:21:46 +0200
merge 74490 74491 73855
thanks

> Cc: 74490 <at> debbugs.gnu.org
> Date: Sat, 23 Nov 2024 15:44:30 +0200
> From: Eli Zaretskii <eliz <at> gnu.org>
> 
> > From: Vincenzo Pupillo <v.pupillo <at> gmail.com>
> > Cc: Eli Zaretskii <eliz <at> gnu.org>
> > Date: Sat, 23 Nov 2024 13:22:30 +0100
> > 
> > Ciao Eli, 
> > make bootstrap fails today, I think it is due to this commit: 
> > commit 1c2e0615fb87727bc2aa1f871353c999b67c792a
> > Author: Eli Zaretskii <eliz <at> gnu.org>
> > Date:   Sat Nov 23 04:51:10 2024 -0500
> > 
> >     ; Update ldefs-boot.el
> > 
> > 
> > 
> > Loading /home/vincenzo/Projects/Emacs/emacs/lisp/ldefs-boot.el (source)...
> > 
> > Error: void-function (rx)
> >   (rx (or (seq "." (or "py" "pth" "pyi" "pyw")) (seq "/" (or "SConstruct" 
> > "SConscript"))) eos)
> >   (defconst python--auto-mode-alist-regexp (rx (or (seq "." (or "py" "pth" 
> > "pyi" "pyw")) (seq "/" (or "SConstruct" "SConscript"))) eos))
> >   eval-buffer(#<buffer  *load*> nil "/home/vincenzo/Projects/Emacs/emacs/lisp/
> > ldefs-boot.el" nil t)
> >   (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) 
> 
> No, I think this is bug#73855, which somehow rears its ugly head.
> 
> Stefan, could you please look into this?

I think I see the reason: python--auto-mode-alist-regexp appears in
ldefs-boot before the autoloads from rx.el, which define the macro rx.
(A similar defconts defined by Tramp doesn't trigger the problem
because it comes _after_ rx.)

So I believe it's a bad idea to use rx in an autoloaded defconst,
since we cannot know whether the defconst will be in loaddefs.el
before or after the rx macro.

Stefan, are there any clean ways of using calls to autoloaded macros
in autoloaded defconst or defvar?




This bug report was last modified 177 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.