diff options
author | Lars Ingebrigtsen <larsi@gnus.org> | 2022-08-21 23:38:09 +0200 |
---|---|---|
committer | Lars Ingebrigtsen <larsi@gnus.org> | 2022-08-21 23:38:09 +0200 |
commit | bfe222288e02472bff0e1ab5ba7ef26af6a2769a (patch) | |
tree | e3c79fb1621de447ad1b0c2d5a580275422a71f5 /lisp/emacs-lisp | |
parent | efd95300c7ce5fcd565bb891b8559c1430873072 (diff) | |
download | emacs-bfe222288e02472bff0e1ab5ba7ef26af6a2769a.tar.gz emacs-bfe222288e02472bff0e1ab5ba7ef26af6a2769a.tar.bz2 emacs-bfe222288e02472bff0e1ab5ba7ef26af6a2769a.zip |
Make the generalized buffer-local-variable obsolete
* lisp/paren.el (show-paren-local-mode):
* lisp/electric.el (electric-indent-local-mode)
(electric-layout-local-mode, electric-quote-local-mode):
* lisp/elec-pair.el (electric-pair-local-mode): Don't use it.
* lisp/emacs-lisp/bytecomp.el (byte-compile-warn-obsolete): Autoload.
* lisp/emacs-lisp/gv.el (buffer-local-variable): Make obsolete
(bug#26624).
* lisp/emacs-lisp/gv.el (make-obsolete-generalized-variable): Move
to allow usage.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r-- | lisp/emacs-lisp/bytecomp.el | 1 | ||||
-rw-r--r-- | lisp/emacs-lisp/gv.el | 25 |
2 files changed, 14 insertions, 12 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 5dde2d2bfbb..ebc9aa75e56 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -1355,6 +1355,7 @@ FORMAT and ARGS are as in `byte-compile-warn'." (let ((byte-compile-form-stack (cons arg byte-compile-form-stack))) (apply #'byte-compile-warn format args))) +;;;###autoload (defun byte-compile-warn-obsolete (symbol type) "Warn that SYMBOL (a variable, function or generalized variable) is obsolete. TYPE is a string that say which one of these three types it is." diff --git a/lisp/emacs-lisp/gv.el b/lisp/emacs-lisp/gv.el index 0c374ec5e37..db902d9db8c 100644 --- a/lisp/emacs-lisp/gv.el +++ b/lisp/emacs-lisp/gv.el @@ -141,6 +141,18 @@ all the parts of PLACE that can be evaluated and then runs E. (declare (indent 2) (debug (sexp form def-body))) `(gv-get ,place (lambda ,vars ,@body))) +(defun make-obsolete-generalized-variable (obsolete-name current-name when) + "Make byte-compiler warn that generalized variable OBSOLETE-NAME is obsolete. +The warning will say that CURRENT-NAME should be used instead. + +If CURRENT-NAME is a string, that is the `use instead' message. + +WHEN should be a string indicating when the variable was first +made obsolete, for example a date or a release number." + (put obsolete-name 'byte-obsolete-generalized-variable + (purecopy (list current-name when))) + obsolete-name) + ;; Different ways to declare a generalized variable. ;;;###autoload (defmacro gv-define-expander (name handler) @@ -395,6 +407,7 @@ The return value is the last VAL in the list. (gv-define-setter buffer-local-value (val var buf) (macroexp-let2 nil v val `(with-current-buffer ,buf (set (make-local-variable ,var) ,v)))) +(make-obsolete-generalized-variable 'buffer-local-value nil "29.1") (gv-define-expander alist-get (lambda (do key alist &optional default remove testfn) @@ -619,18 +632,6 @@ REF must have been previously obtained with `gv-ref'." ;;; Generalized variables. -(defun make-obsolete-generalized-variable (obsolete-name current-name when) - "Make byte-compiler warn that generalized variable OBSOLETE-NAME is obsolete. -The warning will say that CURRENT-NAME should be used instead. - -If CURRENT-NAME is a string, that is the `use instead' message. - -WHEN should be a string indicating when the variable was first -made obsolete, for example a date or a release number." - (put obsolete-name 'byte-obsolete-generalized-variable - (purecopy (list current-name when))) - obsolete-name) - ;; Some Emacs-related place types. (gv-define-simple-setter buffer-file-name set-visited-file-name t) (make-obsolete-generalized-variable |