mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-24 06:20:43 -08:00
* lisp/emacs-lisp/bytecomp.el: Silence obsolete warnings more reliably.
(byte-compile-global-not-obsolete-vars): New var. (byte-compile-check-variable, byte-compile-make-obsolete-variable): Use it. (byte-compile-warn-obsolete): Align text with the one in *Help*.
This commit is contained in:
parent
cd1181dbec
commit
bac7ff225f
2 changed files with 15 additions and 4 deletions
|
|
@ -359,10 +359,12 @@ else the global value will be modified."
|
|||
"List of commands that are not meant to be called from Lisp.")
|
||||
|
||||
(defvar byte-compile-not-obsolete-vars nil
|
||||
"If non-nil, a list of variables that shouldn't be reported as obsolete.")
|
||||
"List of variables that shouldn't be reported as obsolete.")
|
||||
(defvar byte-compile-global-not-obsolete-vars nil
|
||||
"Global list of variables that shouldn't be reported as obsolete.")
|
||||
|
||||
(defvar byte-compile-not-obsolete-funcs nil
|
||||
"If non-nil, a list of functions that shouldn't be reported as obsolete.")
|
||||
"List of functions that shouldn't be reported as obsolete.")
|
||||
|
||||
(defcustom byte-compile-generate-call-tree nil
|
||||
"Non-nil means collect call-graph information when compiling.
|
||||
|
|
@ -1113,7 +1115,7 @@ Each function's symbol gets added to `byte-compile-noruntime-functions'."
|
|||
(unless (and funcp (memq symbol byte-compile-not-obsolete-funcs))
|
||||
(byte-compile-warn "`%s' is an obsolete %s%s%s" symbol
|
||||
(if funcp "function" "variable")
|
||||
(if asof (concat " (as of Emacs " asof ")") "")
|
||||
(if asof (concat " (as of " asof ")") "")
|
||||
(cond ((stringp instead)
|
||||
(concat "; " instead))
|
||||
(instead
|
||||
|
|
@ -3030,6 +3032,7 @@ That command is designed for interactive use only" fn))
|
|||
((let ((od (get var 'byte-obsolete-variable)))
|
||||
(and od
|
||||
(not (memq var byte-compile-not-obsolete-vars))
|
||||
(not (memq var byte-compile-global-not-obsolete-vars))
|
||||
(or (case (nth 1 od)
|
||||
(set (not (eq access-type 'reference)))
|
||||
(get (eq access-type 'reference))
|
||||
|
|
@ -4116,7 +4119,7 @@ binding slots have been popped."
|
|||
(byte-defop-compiler-1 make-obsolete-variable)
|
||||
(defun byte-compile-make-obsolete-variable (form)
|
||||
(when (eq 'quote (car-safe (nth 1 form)))
|
||||
(push (nth 1 (nth 1 form)) byte-compile-not-obsolete-vars))
|
||||
(push (nth 1 (nth 1 form)) byte-compile-global-not-obsolete-vars))
|
||||
(byte-compile-normal-call form))
|
||||
|
||||
(defun byte-compile-defvar (form)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue