bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#47049: [feature/native] macro-expansion cycle when compiling comp.el


From: Eli Zaretskii
Subject: bug#47049: [feature/native] macro-expansion cycle when compiling comp.el
Date: Wed, 10 Mar 2021 18:17:15 +0200

> From: Andrea Corallo <akrl@sdf.org>
> Cc: 47049@debbugs.gnu.org
> Date: Wed, 10 Mar 2021 16:05:10 +0000
> 
> > I made some local modifications in comp.el, and used that modified
> > comp.el for a while (by loading it manually at run time) to debug some
> > problem.  Then I undid those local modifications of comp.el (by saying
> > "git checkout") and said "make" to rebuild Emacs.  And I see this:
> >
> >     ELC      emacs-lisp/comp.elc
> >   Warning: Eager macro-expansion skipped due to cycle:
> >       => (load "comp.el") => (macroexpand-all (defalias 'comp-add-call-cstr 
> >  )) => (macroexpand (comp-loop-insn-in-block  )) => (load "comp.el")
> >
> > Why does this happen?
> 
> I'm not sure, but I can reproduce it.
> 
> I guess (just a guess) it might be because `comp-add-call-cstr' is using
> a macro `comp-loop-insn-in-block' that is expanding with a
> `cl-symbol-macrolet' inside? (no idea why this should be a problem).
> 
> > could it be that while comp.el was modified it
> > got native-compiled, and now that inconsistent comp.eln gets in the
> > way?
> 
> I think this has not to do specifically with native compilation.
> 
> I see it goes away removing '(setq load-prefer-newer t)' from the
> invocation tho.
> 
> Perhaps somebody already more into the macro expansion business might
> have some suggestion.

Stefan, can you help, please?





reply via email to

[Prev in Thread] Current Thread [Next in Thread]