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

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

bug#77883: 31.0.50; C-c C-e in *scratch* generates a missing lexical bin


From: Stefan Monnier
Subject: bug#77883: 31.0.50; C-c C-e in *scratch* generates a missing lexical binding cookie warning
Date: Fri, 18 Apr 2025 09:16:18 -0400
User-agent: Gnus/5.13 (Gnus v5.13)

>> C-c C-e calls `eval-buffer' which "ignores the current value of the
>> `lexical-binding' variable.  Instead it will heed any
>> -*- lexical-binding: t -*- settings in the buffer, and if there is no such
>> setting, the buffer will be evaluated without lexical binding."
>> 
>> Not good in this case.
>
> Is it good in any other case?
>
> I mean, what's the logic behind ignoring the current value of
> lexical-binding, but heeding the cookie? let alone defaulting to
> dynamic binding if there's no cookie?  If the reason is backward
> compatibility, I think I'd like to see the details: where would
> changing this cause problems?

I can't remember how we ended up with this, but I strongly suspect it
has to do with the use of `eval-buffer` in `load-with-code-conversion`,
which is the most common use of `eval-buffer` (in dynamic counts, not
static counts, of course).


        Stefan






reply via email to

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