Subject: bug#73886: 29.4; Confusing info about void function cells in Emacs Lisp manual

From: Eli Zaretskii <[email-masked]>
Date: Sun, 20 Oct 2024 08:18:34 +0300

> From: Stefan Monnier <[email-masked]>
> Cc: Ulrich Müller <[email-masked]>,
>   [email-masked]
> Date: Sat, 19 Oct 2024 22:12:48 -0400
> 
> >> Section 13.9 "Accessing Function Cell Contents" of the GNU Emacs Lisp
> >> Reference Manual emphasizes the distinction between void and nil
> >> in function cells:
> >> 
> >> |    Note that void is not the same as ‘nil’ or the symbol ‘void’.
> >> | The symbols ‘nil’ and ‘void’ are Lisp objects, and can be stored into
> >> | a function cell just as any other object can be (and ‘void’ can be a
> >> | valid function if you define it with ‘defun’).  A void function cell
> >> | contains no object whatsoever.
> 
> Oops.  Looks like I missed this part when I changed it back around
> Emacs-24.4:
> 
>     ** In 'symbol-function', nil and "unbound" are indistinguishable.
>     'symbol-function' does not signal a 'void-function' error any more.
>     To determine if a symbol's function definition is void, use 'fboundp'.

Could you explain the rationale for that change?  I tried to look for
relevant discussions around that date, but came up empty-handed.