Subject: bug#59057: Emacs 29. Byte compiler sometimes forgets about a defvar.

From: Stefan Monnier <[email-masked]>
Date: Wed, 09 Nov 2022 12:54:57 -0500

> The basic problem is that defvar is a dog's breakfast of a function.  In
> fact, it's two distinct functions sharing a name.  These two functions
> have little else to do with eachother.

Yup.

> And defvar appears to be the only function in Emacs where supplying nil
> as an &optional argument has an effect different from omitting it.  This
> is bad for anybody trying to learn Emacs Lisp.

Not the only one, sadly (`declare-function` comes to mind :-)), but yes,
it's unusual.

        Stefan