Mercurial > emacs
changeset 52133:4c112142c56f
(byte-compile-not-obsolete-var): New var.
(byte-compile-variable-ref): Handle byte-compile-not-obsolete-var.
(byte-compile-defvar): Bind byte-compile-not-obsolete-var
to prevent warnings about defvar for an obsolete variable.
(byte-compile-log-warning):
warning-group-format renamed to warning-type-format.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Wed, 06 Aug 2003 01:08:21 +0000 |
parents | 4127c72e350b |
children | d26709514a27 |
files | lisp/emacs-lisp/bytecomp.el |
diffstat | 1 files changed, 15 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/emacs-lisp/bytecomp.el Wed Aug 06 01:05:15 2003 +0000 +++ b/lisp/emacs-lisp/bytecomp.el Wed Aug 06 01:08:21 2003 +0000 @@ -10,7 +10,7 @@ ;;; This version incorporates changes up to version 2.10 of the ;;; Zawinski-Furuseth compiler. -(defconst byte-compile-version "$Revision: 2.134 $") +(defconst byte-compile-version "$Revision: 2.135 $") ;; This file is part of GNU Emacs. @@ -351,6 +351,9 @@ (const callargs) (const redefine) (const obsolete) (const noruntime) (const cl-functions)))) +(defvar byte-compile-not-obsolete-var nil + "If non-nil, this is a variable that shouldn't be reported as obsolete.") + (defcustom byte-compile-generate-call-tree nil "*Non-nil means collect call-graph information when compiling. This records functions were called and from where. @@ -982,7 +985,7 @@ ;; Also log the current function and file if not already done. (defun byte-compile-log-warning (string &optional fill level) (let ((warning-prefix-function 'byte-compile-warning-prefix) - (warning-group-format "") + (warning-type-format "") (warning-fill-prefix (if fill " "))) (display-warning 'bytecomp string level "*Compile-Log*"))) @@ -2705,7 +2708,8 @@ (if (symbolp var) "constant" "nonvariable") (prin1-to-string var)) (if (and (get var 'byte-obsolete-variable) - (memq 'obsolete byte-compile-warnings)) + (memq 'obsolete byte-compile-warnings) + (not (eq var byte-compile-not-obsolete-var))) (let* ((ob (get var 'byte-obsolete-variable)) (when (cdr ob))) (byte-compile-warn "%s is an obsolete variable%s; %s" var @@ -3608,13 +3612,14 @@ fun var string)) `(put ',var 'variable-documentation ,string)) (if (cddr form) ; `value' provided - (if (eq fun 'defconst) - ;; `defconst' sets `var' unconditionally. - (let ((tmp (make-symbol "defconst-tmp-var"))) - `(funcall '(lambda (,tmp) (defconst ,var ,tmp)) - ,value)) - ;; `defvar' sets `var' only when unbound. - `(if (not (default-boundp ',var)) (setq-default ,var ,value))) + (let ((byte-compile-not-obsolete-var var)) + (if (eq fun 'defconst) + ;; `defconst' sets `var' unconditionally. + (let ((tmp (make-symbol "defconst-tmp-var"))) + `(funcall '(lambda (,tmp) (defconst ,var ,tmp)) + ,value)) + ;; `defvar' sets `var' only when unbound. + `(if (not (default-boundp ',var)) (setq-default ,var ,value)))) (when (eq fun 'defconst) ;; This will signal an appropriate error at runtime. `(eval ',form)))