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

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

bug#21311: 25.0.50; non-defvared hooks are not declared special with lex


From: Stefan Monnier
Subject: bug#21311: 25.0.50; non-defvared hooks are not declared special with lexical-binding
Date: Fri, 21 Aug 2015 09:48:53 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux)

> It seems that hooks that are not declared using defvar but come into
> being just because of a (add-hook 'my-hook ...) are not declared as
> special meaning you cannot let-bind them to change their value in the
> dynamic scope of the let.

Yes.

> The bug disappears as soon as I
>   - don't use lexical-binding, or
>   - defvar the hook (Fix #1 or #2)

I think either of fix #1 or #2 are proper fixes and I think there's not
much more we can do about it.

If the hook hasn't been created yet at all (neither defvar, nor
add-hook) then fix #1 or #2 are really the only options.

Arguably, nowadays packages should defvar all their hooks.


        Stefan





reply via email to

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