Subject: bug#64439: 28.2; auto-fill-mode gets turned on all over the place

From: Jim Porter <[email-masked]>
Date: Mon, 10 Jul 2023 16:53:41 -0700

On 7/10/2023 2:54 PM, Jim Porter wrote:
> Interestingly, I can't reproduce this on Emacs 30 (latest master), but I 
> *can* on Emacs 28.2 and the latest rev on the Emacs 29 branch. I haven't 
> dug any further yet to see which commit could have changed this though.

... and it looks like you're the one who fixed this, Stefan! Should this 
get backported into the emacs-29 branch? It's a one-line fix, but I'm 
not sure if a fix to "src/eval.c" is too invasive for the release branch...

5223762e02ac84eee984cd1f7a17865766cdad9a is the first fixed commit
commit 5223762e02ac84eee984cd1f7a17865766cdad9a
Author: Stefan Monnier <[email-masked]>
Date:   Sun Apr 2 17:45:58 2023 -0400

     src/eval.c: Fix bug#62419

     Yup, almost 40 years after ELisp first combined them, buffer-local
     and let bindings still don't work quite right :-(

     The "automatically buffer-local if set" semantics should follow the
     principle that it becomes buffer-local iff the var's current binding
     refers to the top-level/global/non-let binding.

     * src/eval.c (let_shadows_buffer_binding_p): Disregard non-global
     let-bindings.

     * test/src/eval-tests.el (eval-test--bug62419): New test.