GNU bug report logs - #5971
23.1.95; `delete' modifies default value instead of buffer-local value

Previous Next

Package: emacs;

Reported by: "Drew Adams" <drew.adams <at> oracle.com>

Date: Mon, 19 Apr 2010 02:43:02 UTC

Severity: minor

Tags: notabug, wontfix

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #33 received at 5971 <at> debbugs.gnu.org (full text, mbox):

From: "Drew Adams" <drew.adams <at> oracle.com>
To: "'Andreas Schwab'" <schwab <at> linux-m68k.org>
Cc: 5971 <at> debbugs.gnu.org, tracker <at> debbugs.gnu.org,
	'Stefan Monnier' <monnier <at> iro.umontreal.ca>,
	'GNU bug Tracking System' <help-debbugs <at> gnu.org>
Subject: RE: bug#5971: 23.1.95;
	`delete' modifies default value instead of buffer-local value
Date: Mon, 19 Apr 2010 09:15:46 -0700
> > Why? (You're not helping, just being evasive.) Why should 
> > modification of a buffer-local value also modify the default value?
> 
> delete works by side effect.  If you don't want this use remove.
> 
> > If this is not a product bug, it is at least a doc bug.
> 
> Delete by side effect any occurrences of ELT as a member of SEQ.
>           ^^^^^^^^^^^
> Pretty clear description.

I'm well aware that `delete' deletes by side effect.
Please read the thread and that will be quite clear.

What's not clear is that a side effect on a buffer-local value should affect the
default value.

Nothing in the doc states that they share list structure. Apparently they do.
This relation between the two needs to be documented. From reading the doc there
is nothing that would lead you to expect that setting the buffer-local value
would ever change the default value.

The doc presents the two values (buffer-local and default) as being separate.
The only relation described between the two is that if the buffer-local value is
not set then the default value is used for the variable.

In this case, the buffer-local value is not set in buffer Y, so it uses the
default value. What's not clear is why setting the buffer-local value in buffer
X changed the default value (so it was used in buffer Y, where the b-l value was
not set).





This bug report was last modified 13 years and 321 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.