Subject: bug#12548: 24.2.50; Eager macro-expansion skipped due to cycle

From: Stefan Monnier <[email-masked]>
Date: Mon, 01 Oct 2012 11:13:04 -0400

> Since about 2 weeks ago, I see these warning messages while
> bootstrapping on MS-Windows, when Lisp files are being byte-compiled.

Hmm.. you should have seen them since when I introduced the
eager-macroexpansion, which is a bit more than 2 weeks.

>   Warning: Eager macro-expansion skipped due to cycle:
>     Γאª => (load "erc-backend.el") => (macroexpand-all (defun erc-server-connect Γאª)) => (macroexpand (erc-log Γאª)) => (load "erc.el") => (load "erc-backend.el")

[ Not sure what this Γאª is about, but I'll assume it's some incorrect
  encoding of … ]

> AFAICS, all of these messages are related either to loading tramp.el
> or erc-backend.el.  But I may have missed others, not sure.

Yes, IIRC there are two such problematic cycles, one with Tramp and
another with ERC (there were a couple more, but I fixed them).
I'm not completely sure how best to fix them, so I preferred to leave
them in and wait for the ERC and Tramp maintainers to fix them later.
They're harmless in the sense that the resulting .elc files should be
correct (and probably even identical).

I think the warning prints a clear and concise description of the cycle,
so it should not be too hard for the maintainers of those packages to
understand the problem and decide how best to fix it.

> and its subroutines.  I never saw anything similar in "regular" byte
> compilation after updating from the master repository, FWIW.

A bootstrap under GNU/Linux shows those same warnings.

        Stefan