Subject: Re: bug#40088: 27.0.90; Symbol’s value as variable is void: debugger-outer-match-data

From: Michael Heerdegen <[email-masked]>
Date: Wed, 18 Mar 2020 01:06:32 +0100

Dmitry Gutov <[email-masked]> writes:

> It doesn't look like this bug should be solved this way. Having
> "... is unbound" is better because it points at some function
> forgetting to let-bind this variable (someone should find out which
> and to which values).
>
> Whereas if it had an init value, that would mask such problems because
> nil is a somewhat valid value.

If there are lots of cases like this under the cited thousands then I
guess we need a way to declare a variable special without assigning an
init value.

I don't like the (defvar var) syntax we have now.  It's different than
the (defvar var value) syntax in more than one way, and it's too
easily overseeable that it doesn't make a variable special.

Michael.