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

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

bug#68487: [PATCH] Make jump commands usable for all skeletons


From: Eli Zaretskii
Subject: bug#68487: [PATCH] Make jump commands usable for all skeletons
Date: Sun, 28 Jan 2024 07:52:48 +0200

> From: Martin Marshall <law@martinmarshall.com>
> Cc: 68487@debbugs.gnu.org
> Date: Sat, 27 Jan 2024 16:48:52 -0500
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> > OK.  But after applying the patch on the master branch, I get this
> > while byte-compiling:
> >
> >   In toplevel form:
> >   expand.el:91:2: Error: Eager macro-expansion failure: (error "Eager 
> > macro-expansion skipped due to cycle:
> >       => (load \"expand.el\") => (macroexpand-all (define-skeleton 
> > expand-c-for-skeleton  )) => (macroexpand (define-skeleton  )) => (load 
> > \"skeleton.el\") => (load \"expand.el\")")
> >
> >   In toplevel form:
> >   skeleton.el:34:11: Error: Eager macro-expansion failure: (error "Eager 
> > macro-expansion skipped due to cycle:
> >       => (load \"expand.el\") => (macroexpand-all (define-skeleton 
> > expand-c-for-skeleton  )) => (macroexpand (define-skeleton  )) => (load 
> > \"skeleton.el\") => (load \"expand.el\")")
> >   Makefile:335: recipe for target `skeleton.elc' failed
> >   make[3]: *** [skeleton.elc] Error 1
> >   make[3]: *** Waiting for unfinished jobs....
> >   Makefile:335: recipe for target `expand.elc' failed
> >
> > Could you please DTRT to avoid these errors?
> 
> Sorry, that was due to my incorrect assumption that byte-compiling with
> "C-c C-f" would be equivalent to a full recompile.
> 
> I can fix it by deleting the sample skeleton (`expand-c-for-skeleton')
> from expand.el.  But even though it's just a sample template, there
> might be people using it.
> 
> Another option would be to join expand.el and skeleton.el into a single
> file, perhaps calling it "expand-skeleton.el".
> 
> What do you think is best?

Neither alternative sounds attractive, TBH.

Stefan, what are our facilities to avoid mutual recursion like that?
Put the common stuff on a separate file, perhaps?

Thanks.





reply via email to

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