Subject: Re: bug#65017: 29.1; Byte compiler interaction with cl-lib function objects, removes symbol-function

From: Eli Zaretskii <[email-masked]>
Date: Fri, 04 Aug 2023 17:04:36 +0300

> Cc: Mattias Engdegård <[email-masked]>,
>  [email-masked], Eric Marsden <[email-masked]>
> Date: Fri, 4 Aug 2023 13:22:58 +0000
> From: Alan Mackenzie <[email-masked]>
> 
> symbols-with-pos-enabled gets erroneously
> bound to t in internal-macroexpand-for-load (emacs-lisp/macroexp.el).
> This is the cause of the bug; in cl--labels-convert it causes the first
> eq to return non-nil when comparing 'equal to #<symbol equal at 194>.

Why "erroneously"? what are the rules for binding that variable to a
non-nil value?  I don't see any of that documented in the "Symbols
with Position" node of the ELisp manual.