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

From: Martin Marshall <[email-masked]>
Date: Sat, 27 Jan 2024 16:48:52 -0500

Eli Zaretskii <[email-masked]> 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?

-- 
Best regards,
Martin Marshall