Subject: bug#39823: 26.3; update-directory-autoloads regression from Emacs 26 to Emacs 27

From: Maxim Cournoyer <[email-masked]>
Date: Mon, 16 Mar 2020 22:16:04 -0400

Hello,

Richard Stallman <[email-masked]> writes:

> [[[ To any NSA and FBI agents reading my email: please consider    ]]]
> [[[ whether defending the US Constitution against all enemies,     ]]]
> [[[ foreign or domestic, requires you to follow Snowden's example. ]]]
>
> Is there any real use for lexical scoping in --eval?
> I suggest reverting the default for --eval to dynamic.
> We could introduce --evallex to specify lexical scoping
> and ask people to tell us if they find it useful.

Not a bad suggestion, but I actually embrace the change to lexical mode
everywhere (I find it more forward looking, and like that it is
consistently the default everywhere).  I believe the reason for this bug
report is two-fold:

1) I wasn't aware of the change to --eval (my bad -- I don't follow
Emacs development very closely).
2) The API of some older code (such as the `update-directory-autoloads'
procedure from the autoload library, as I found out) requires the use of
dynamic evaluation for its API to function.

Now that I know about 1), it's rather easy to work around 2).  And I'd
guess that with Elisp finally preferring lexical scope by default, 2)
will tend to disappear over time.

Maxim