GNU bug report logs - #21695
25.0.50; Change most occurrences of `setq' in Emacs manual to `customize-set-variable'

Previous Next

Package: emacs;

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

Date: Fri, 16 Oct 2015 21:51:01 UTC

Severity: wishlist

Found in version 25.0.50

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


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

From: Gregory Heytings <gregory <at> heytings.org>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 21695 <at> debbugs.gnu.org, hmelman <at> gmail.com, rms <at> gnu.org
Subject: Re: bug#21695: 25.0.50; Change most occurrences of `setq' in Emacs
 manual to `customize-set-variable'? Really?
Date: Mon, 13 Sep 2021 09:11:11 +0000
>> +	if (!EQ (plist, Qnil) && !NILP (Fplist_get (plist, Qcustom_set)))
>> +	  safe_call2 (Qdisplay_warning, Qsetq,
>> +		      CALLN (Fformat,
>> +			     build_string
>> +			     ("`%s' should be set with `customize-set-variable'"),
>> +			     sym));
>
> I haven't tried the patch, but won't this be triggered by the code 
> that's handling the variables?  For instance, `latin1-display' has a 
> :set, but the file itself does `(setq latin1-display t)' etc.  (This is 
> a very common pattern.)
>

No, (latin1-display 'latin-2) does not raise a warning with the patch, 
because latin1-disp.el is bytecompiled, and Fsetq is not used when 
bytecompiled code is executed (bytecompiled code only uses Fset).

That being said, I would say that using (setq latin1-display t) when 
latin1-display has a :set is always a bug, in the init file, 
interactively, or in built-in code (bytecompiled or not), and that (set 
'latin1-display t) should be used instead.  WDYT?




This bug report was last modified 3 years and 300 days ago.

Previous Next


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