Subject: bug#69684: Functionality of Fbare_symbol has been lost.

From: Alan Mackenzie <[email-masked]>
Date: Mon, 11 Mar 2024 20:01:06 +0000

Hello Paul.

On Mon, Mar 11, 2024 at 00:38:39 -0700, Paul Eggert wrote:
> On 2024-03-10 03:39, Eli Zaretskii wrote:
> > OK, so let's wait for Paul to chime in.

> The problem was that I mistakenly believed the documentation when it 
> said that a symbol with position behaves like its bare symbol when 
> symbols-with-position-enabled is t. Unfortunately it appears that this 
> part of the doc wasn't intended to apply to bare-symbol, so when I fixed 
> something else involving bare-symbol I got the semantics wrong.

I think the doc and doc strings were somewhat unclear when it came to
the less obvious cases.

> As penance I installed the attached, which makes a simple code change 
> along the lines that you suggested and adds a regression test to help 
> prevent this bug from happening again.

Thanks!

> The hardest part of writing this patch was adjusting the documentation 
> to match what I think was the intent of the behavior. Alan, if you find 
> mistakes in that please let me know.

That might take a little tine.  I've broken my right arm, which makes
doing Emacs strenuous work.  But I'm sure the patch  will work.

It's also worth pointing out that the uses of SWPs are expanding (see
bug #67455), something I've got mixed feelings about, even though I'm
doing the implementation.

> A couple of other things.

> Currently (position-symbol 'x -1) creates a symbol with position where 
> the position is negative; is that intended? The documentation says 
> positions are nonnegative.

Yes.  I think that back when it was being done, there was no convenient
way to exclude -ve numbers.

> Also, more test cases of the symbols with position primitives would not 
> go amiss. I'm not a good person to write them, though, as I easily get 
> confused by symbols with position.

Yes, I agree here, too.

[ .... ]

-- 
Alan Mackenzie (Nuremberg, Germany)