[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#8646: byte-compile-initial-macro-environment confuses byte-compile-a
From: |
Stefan Monnier |
Subject: |
bug#8646: byte-compile-initial-macro-environment confuses byte-compile-arglist-warn |
Date: |
Wed, 11 May 2011 22:00:03 -0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
>> The "2+" vs "2-4" can be fixed by changing either the macro definition
>> of its override so that their arglist matches.
> No, really? ;)
> I don't see how to change the override definition to not use &rest,
> since it is a function that needs to distinguish "no argument" from
> "argument nil". And changing the macro to match the override seems like
> putting the cart before the horse.
> How about the following, based on the idea that it is the override that
> should be congruent with the real macro definition, even though the
> former gets defined first? It's the reason that
> byte-compile-macroexpand-declare-function can work.
It makes some sense, indeed. But I'm not thrilled about this solution.
I'd rather change the defmacro to match the override.
Stefan