GNU bug report logs -
#5950
defvaralias after defvar should be warned in runtime
Previous Next
Reported by: irieshinsuke <at> yahoo.co.jp
Date: Thu, 15 Apr 2010 05:15:02 UTC
Severity: normal
Tags: fixed, patch
Fixed in version 27.1
Done: Noam Postavsky <npostavs <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Please consider below:
We assume an user wrote .emacs file as:
(setq old-foo 123)
(load "bar")
Here, bar.el includes the following:
(defvar foo 456)
(define-obsolete-variable-alias 'old-foo 'foo)
By this .emacs setting, the user probably hopes `old-foo' remains 123
after loading bar.el, but actually it will be changed to 456. This
behavior is inconsistent with the principle that `defvar' must not
override existing value, so bar.el should be modified as:
(define-obsolete-variable-alias 'old-foo 'foo)
(defvar foo 456)
I think the programs like bar.el should be warned when running (and
byte-compiling, if possible).
--
IRIE Shinsuke, Ph.D.
This bug report was last modified 6 years and 298 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.