emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 874ba85 1/3: Remove many items obsolete since Emacs 23.1


From: Stefan Kangas
Subject: master 874ba85 1/3: Remove many items obsolete since Emacs 23.1
Date: Fri, 14 Aug 2020 07:09:44 -0400 (EDT)

branch: master
commit 874ba85363e90a54f976af542e9b3f4c662e317e
Author: Stefan Kangas <stefankangas@gmail.com>
Commit: Stefan Kangas <stefankangas@gmail.com>

    Remove many items obsolete since Emacs 23.1
    
    Emacs 23.1 was five major releases and over a decade ago.
    This list can be reviewed before to the next release, but for now
    hopefully this motivates any needed external updates.
    Ref: https://lists.gnu.org/archive/html/emacs-devel/2020-05/msg02198.html
    
    * lisp/abbrev.el (pre-abbrev-expand-hook):
    * lisp/bookmark.el (bookmark-read-annotation-text-func)
    (bookmark-jump-noselect):
    * lisp/buff-menu.el (buffer-menu-mode-hook):
    * lisp/cus-edit.el (custom-mode-hook, custom-mode):
    * lisp/dirtrack.el (dirtrack-debug-toggle, dirtrack-debug):
    * lisp/emacs-lisp/crm.el (crm-minibuffer-complete)
    (crm-minibuffer-completion-help)
    (crm-minibuffer-complete-and-exit):
    * lisp/emacs-lisp/easymenu.el
    (easy-menu-precalculate-equivalent-keybindings):
    * lisp/emacs-lisp/lisp-mode.el (lisp-mode-auto-fill):
    * lisp/epa.el (epa-display-verify-result):
    * lisp/epg.el (epg-passphrase-callback-function):
    * lisp/eshell/eshell.el (eshell-report-bug):
    * lisp/ffap.el (ffap-bug, ffap-submit-bug):
    * lisp/files.el (locate-file-completion):
    * lisp/hi-lock.el (hi-lock-face-history, hi-lock-regexp-history):
    * lisp/hilit-chg.el (highlight-changes-initial-state)
    (highlight-changes-active-string)
    (highlight-changes-passive-string, global-highlight-changes):
    * lisp/international/mule-cmds.el (nonascii-insert-offset)
    (nonascii-translation-table):
    * lisp/international/mule-diag.el (non-iso-charset-alist):
    * lisp/international/mule-util.el (detect-coding-with-priority):
    * lisp/international/mule.el (charset-id, charset-bytes)
    (charset-list, char-valid-p, generic-char-p)
    (char-coding-system-table, make-coding-system)
    (set-coding-priority)
    * lisp/mail/rmail.el (rmail-message-filter):
    * lisp/minibuffer.el (complete-in-turn, dynamic-completion-table)
    (completion-common-substring)
    (minibuffer-local-must-match-filename-map):
    * lisp/mouse.el (mouse-major-mode-menu, mouse-popup-menubar)
    (mouse-popup-menubar-stuff):
    * lisp/net/newst-treeview.el (newsticker-groups-filename):
    * lisp/obsolete/tpu-edt.el (tpu-have-ispell, GOLD-map):
    * lisp/password-cache.el (password-read-and-add):
    * lisp/shell.el (shell-dirtrack-toggle):
    * lisp/subr.el (forward-point, redisplay-end-trigger-functions)
    (process-filter-multibyte-p, set-process-filter-multibyte):
    * lisp/t-mouse.el (t-mouse-mode):
    * lisp/term/w32-win.el (w32-focus-frame, w32-select-font):
    * lisp/textmodes/ispell.el (ispell-aspell-supports-utf8):
    * lisp/textmodes/remember.el (remember-buffer):
    * lisp/tooltip.el (tooltip-hook):
    * lisp/url/url-util.el (url-generate-unique-filename):
    * lisp/url/url-vars.el (url-temporary-directory):
    * lisp/vc/vc-hooks.el (vc-workfile-version)
    (vc-default-working-revision):
    * lisp/vc/vc-mtn.el (vc-mtn-command):
    * lisp/vc/vc.el (vc-revert-buffer):
    * lisp/vcursor.el (vcursor-toggle-vcursor-map):
    Remove items, obsolete since Emacs 23.1.
    * lisp/abbrev.el (expand-abbrev):
    * lisp/epg.el (epg-context): Change
    'epg-passphrase-callback-function' call to 'epa-' alternative.
    * lisp/eshell/em-rebind.el (eshell-cannot-leave-input-list): Don't
    refer to removed function 'forward-point'.
    * test/manual/etags/c-src/abbrev.c (Fexpand_abbrev):
    (syms_of_abbrev): Don't run removed hook 'pre-abbrev-expand-hook'.
    * lisp/international/mule.el (transform-make-coding-system-args):
    Declare obsolete.
    * lisp/progmodes/idlwave.el:
    Update reference to removed function 'char-valid-p'.
    * lisp/gnus/mml2015.el (epg-encrypt-string):
    * lisp/gnus/mml1991.el (epg-make-context):
    * lisp/gnus/mml-smime.el (autoload):
    Remove autoload of removed 'epg-passphrase-callback-function'.
    * lisp/minibuffer.el (completion-extra-properties):
    Remove support for `completion-common-substring'.
    * lisp/obsolete/tpu-edt.el (tpu-toggle-overwrite-mode)
    Remove support for removed `spell' package.
    * src/coding.c (syms_of_coding):
    * doc/misc/efaq.texi:
    * doc/emacs/frames.texi (Menu Mouse Clicks):
    * doc/misc/url.texi (Customization): Doc fixes.
    ; * etc/NEWS: List removed items.
---
 doc/emacs/custom.texi            |   1 +
 doc/emacs/frames.texi            |   8 ++-
 doc/misc/efaq.texi               |   2 +-
 doc/misc/url.texi                |   2 -
 etc/NEWS                         |  34 ++++++++++
 lisp/abbrev.el                   |  10 ---
 lisp/bookmark.el                 |  13 ----
 lisp/buff-menu.el                |   3 -
 lisp/cus-edit.el                 |   4 --
 lisp/dirtrack.el                 |   3 -
 lisp/emacs-lisp/crm.el           |   6 --
 lisp/emacs-lisp/easymenu.el      |  10 ---
 lisp/emacs-lisp/lisp-mode.el     |   2 -
 lisp/epa.el                      |   4 --
 lisp/epg.el                      |  16 +----
 lisp/eshell/em-rebind.el         |   1 -
 lisp/eshell/eshell.el            |   9 ---
 lisp/ffap.el                     |   6 --
 lisp/files.el                    |   8 ---
 lisp/gnus/mml-smime.el           |   1 -
 lisp/gnus/mml1991.el             |   1 -
 lisp/gnus/mml2015.el             |   1 -
 lisp/hi-lock.el                  |   6 --
 lisp/hilit-chg.el                |  16 -----
 lisp/international/mule-cmds.el  |   5 --
 lisp/international/mule-diag.el  |   4 --
 lisp/international/mule-util.el  |   9 ---
 lisp/international/mule.el       | 135 +--------------------------------------
 lisp/mail/rmail.el               |  19 ------
 lisp/minibuffer.el               |  18 +-----
 lisp/mouse.el                    |  28 --------
 lisp/net/newst-treeview.el       |  30 +--------
 lisp/obsolete/tpu-edt.el         |  12 +---
 lisp/password-cache.el           |  16 -----
 lisp/shell.el                    |   3 -
 lisp/subr.el                     |   7 --
 lisp/t-mouse.el                  |   2 -
 lisp/term/w32-win.el             |   4 --
 lisp/textmodes/ispell.el         |   9 ---
 lisp/textmodes/remember.el       |   3 -
 lisp/tooltip.el                  |   2 -
 lisp/url/url-util.el             |  25 --------
 lisp/url/url-vars.el             |   7 --
 lisp/vc/vc-hooks.el              |   8 ---
 lisp/vc/vc-mtn.el                |   1 -
 lisp/vc/vc.el                    |   3 -
 lisp/vcursor.el                  |   3 -
 src/coding.c                     |   3 +-
 test/manual/etags/c-src/abbrev.c |  14 ----
 49 files changed, 49 insertions(+), 488 deletions(-)

diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi
index acd7fb1..a512fd1 100644
--- a/doc/emacs/custom.texi
+++ b/doc/emacs/custom.texi
@@ -2605,6 +2605,7 @@ the function or facility is available, like this:
 (if (fboundp 'blink-cursor-mode)
     (blink-cursor-mode 0))
 
+@c FIXME: Find better example since `set-coding-priority' is removed.
 (if (boundp 'coding-category-utf-8)
     (set-coding-priority '(coding-category-utf-8)))
 @end example
diff --git a/doc/emacs/frames.texi b/doc/emacs/frames.texi
index b99d8ab..b748876 100644
--- a/doc/emacs/frames.texi
+++ b/doc/emacs/frames.texi
@@ -366,9 +366,13 @@ instead of running the @code{mouse-save-then-kill} 
command, rebind
 @kbd{mouse-3} by adding the following line to your init file
 (@pxref{Init Rebinding}):
 
-@c FIXME: `mouse-popup-menubar-stuff' is obsolete since 23.1.
 @smallexample
-(global-set-key [mouse-3] 'mouse-popup-menubar-stuff)
+(global-set-key [mouse-3]
+  '(menu-item "Menu Bar" ignore
+    :filter (lambda (_)
+              (if (zerop (or (frame-parameter nil 'menu-bar-lines) 0))
+                  (mouse-menu-bar-map)
+                (mouse-menu-major-mode-map)))))
 @end smallexample
 
 @node Mode Line Mouse
diff --git a/doc/misc/efaq.texi b/doc/misc/efaq.texi
index 8246704..62dcc0b 100644
--- a/doc/misc/efaq.texi
+++ b/doc/misc/efaq.texi
@@ -4192,7 +4192,7 @@ You can get the old behavior by binding @kbd{SPC} to
 (define-key minibuffer-local-filename-completion-map (kbd "SPC")
   'minibuffer-complete-word)
 
-(define-key minibuffer-local-must-match-filename-map (kbd "SPC")
+(define-key minibuffer-local-filename-must-match-map (kbd "SPC")
   'minibuffer-complete-word)
 @end lisp
 
diff --git a/doc/misc/url.texi b/doc/misc/url.texi
index 8d9b102..0304ff4 100644
--- a/doc/misc/url.texi
+++ b/doc/misc/url.texi
@@ -1312,8 +1312,6 @@ repeated visits do not require repeated domain lookups.
 @end defopt
 @defopt url-max-password-attempts
 @end defopt
-@defopt url-temporary-directory
-@end defopt
 @defopt url-show-status
 @end defopt
 @defopt url-confirmation-func
diff --git a/etc/NEWS b/etc/NEWS
index 962389d..5dcaefe 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -902,6 +902,40 @@ have now been removed.
 ** Some libraries obsolete since Emacs 23 have been removed:
 'ledit.el', 'lmenu.el', 'lucid.el and 'old-whitespace.el'.
 
+---
+** Some functions and variables obsolete since Emacs 23 have been removed:
+
+'GOLD-map', 'bookmark-jump-noselect',
+'bookmark-read-annotation-text-func', 'buffer-menu-mode-hook',
+'char-coding-system-table', 'char-valid-p', 'charset-bytes',
+'charset-id', 'charset-list' (function), 'complete-in-turn',
+'completion-common-substring', 'crm-minibuffer-complete',
+'crm-minibuffer-complete-and-exit', 'crm-minibuffer-completion-help',
+'custom-mode', 'custom-mode-hook', 'detect-coding-with-priority',
+'dirtrack-debug' (function), 'dirtrack-debug-toggle',
+'dynamic-completion-table',
+'easy-menu-precalculate-equivalent-keybindings',
+'epa-display-verify-result', 'epg-passphrase-callback-function',
+'eshell-report-bug', 'ffap-bug', 'ffap-submit-bug', 'forward-point',
+'generic-char-p', 'global-highlight-changes', 'hi-lock-face-history',
+'hi-lock-regexp-history', 'highlight-changes-active-string',
+'highlight-changes-initial-state', 'highlight-changes-passive-string',
+'ispell-aspell-supports-utf8', 'lisp-mode-auto-fill',
+'locate-file-completion', 'make-coding-system',
+'minibuffer-local-must-match-filename-map', 'mouse-major-mode-menu',
+'mouse-popup-menubar', 'mouse-popup-menubar-stuff',
+'newsticker-groups-filename', 'non-iso-charset-alist',
+'nonascii-insert-offset', 'nonascii-translation-table',
+'password-read-and-add', 'pre-abbrev-expand-hook',
+'process-filter-multibyte-p', 'remember-buffer' (function),
+'rmail-message-filter', 'set-coding-priority',
+'set-process-filter-multibyte', 'shell-dirtrack-toggle',
+'t-mouse-mode', 'tooltip-hook', 'tpu-have-ispell',
+'url-generate-unique-filename', 'url-temporary-directory',
+'vc-arch-command', 'vc-default-working-revision' (variable),
+'vc-mtn-command', 'vc-revert-buffer', 'vc-workfile-version',
+'vcursor-toggle-vcursor-map', 'w32-focus-frame', 'w32-select-font'.
+
 
 * Lisp Changes in Emacs 28.1
 
diff --git a/lisp/abbrev.el b/lisp/abbrev.el
index 2d61a96..468b0d9 100644
--- a/lisp/abbrev.el
+++ b/lisp/abbrev.el
@@ -517,14 +517,6 @@ It is nil if the abbrev has already been unexpanded.")
 ;;   "Local (mode-specific) abbrev table of current buffer.")
 ;; (make-variable-buffer-local 'local-abbrev-table)
 
-(defcustom pre-abbrev-expand-hook nil
-  "Function or functions to be called before abbrev expansion is done.
-This is the first thing that `expand-abbrev' does, and so this may change
-the current abbrev table before abbrev lookup happens."
-  :type 'hook
-  :group 'abbrev-mode)
-(make-obsolete-variable 'pre-abbrev-expand-hook 'abbrev-expand-function "23.1")
-
 (defun clear-abbrev-table (table)
   "Undefine all abbrevs in abbrev table TABLE, leaving it empty."
   (setq abbrevs-changed t)
@@ -836,12 +828,10 @@ Takes no argument and should return the abbrev symbol if 
expansion took place.")
 (defun expand-abbrev ()
   "Expand the abbrev before point, if there is an abbrev there.
 Effective when explicitly called even when `abbrev-mode' is nil.
-Before doing anything else, runs `pre-abbrev-expand-hook'.
 Calls the value of `abbrev-expand-function' with no argument to do
 the work, and returns whatever it does.  (That return value should
 be the abbrev symbol if expansion occurred, else nil.)"
   (interactive)
-  (run-hooks 'pre-abbrev-expand-hook)
   (funcall abbrev-expand-function))
 
 (defun abbrev--default-expand ()
diff --git a/lisp/bookmark.el b/lisp/bookmark.el
index 36a361c..8a3bcf8 100644
--- a/lisp/bookmark.el
+++ b/lisp/bookmark.el
@@ -923,8 +923,6 @@ annotations."
          "#  Date:    " (current-time-string) "\n"))
 
 
-(define-obsolete-variable-alias 'bookmark-read-annotation-text-func
-  'bookmark-edit-annotation-text-func "23.1")
 (defvar bookmark-edit-annotation-text-func 'bookmark-default-annotation-text
   "Function to return default text to use for a bookmark annotation.
 It takes one argument, the name of the bookmark, as a string.")
@@ -1143,17 +1141,6 @@ DISPLAY-FUNC would be `switch-to-buffer-other-window'."
   (let ((pop-up-frames t))
     (bookmark-jump-other-window bookmark)))
 
-(defun bookmark-jump-noselect (bookmark)
-  "Return the location pointed to by BOOKMARK (see `bookmark-jump').
-The return value has the form (BUFFER . POINT).
-
-Note: this function is deprecated and is present for Emacs 22
-compatibility only."
-  (declare (obsolete bookmark-handle-bookmark "23.1"))
-  (save-excursion
-    (bookmark-handle-bookmark bookmark)
-    (cons (current-buffer) (point))))
-
 (defun bookmark-handle-bookmark (bookmark-name-or-record)
   "Call BOOKMARK-NAME-OR-RECORD's handler or `bookmark-default-handler'
 if it has none.  This changes current buffer and point and returns nil,
diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el
index aa5c47c..d06ba28 100644
--- a/lisp/buff-menu.el
+++ b/lisp/buff-menu.el
@@ -229,9 +229,6 @@ commands.")
     map)
   "Local keymap for `Buffer-menu-mode' buffers.")
 
-(define-obsolete-variable-alias 'buffer-menu-mode-hook
-  'Buffer-menu-mode-hook "23.1")
-
 (define-derived-mode Buffer-menu-mode tabulated-list-mode "Buffer Menu"
   "Major mode for Buffer Menu buffers.
 The Buffer Menu is invoked by the commands \\[list-buffers],
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index 1669596..5ec5799 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -4868,8 +4868,6 @@ If several parents are listed, go to the first of them."
               (parent (downcase (widget-get  button :tag))))
          (customize-group parent)))))
 
-(define-obsolete-variable-alias 'custom-mode-hook 'Custom-mode-hook "23.1")
-
 (defcustom Custom-mode-hook nil
   "Hook called when entering Custom mode."
   :type 'hook
@@ -4940,8 +4938,6 @@ if that value is non-nil."
 
 (put 'Custom-mode 'mode-class 'special)
 
-(define-obsolete-function-alias 'custom-mode 'Custom-mode "23.1")
-
 ;;; The End.
 
 (provide 'cus-edit)
diff --git a/lisp/dirtrack.el b/lisp/dirtrack.el
index 3a0bbd2..ad0c18d 100644
--- a/lisp/dirtrack.el
+++ b/lisp/dirtrack.el
@@ -196,9 +196,6 @@ directory."
     (remove-hook 'comint-preoutput-filter-functions 'dirtrack t)))
 
 
-(define-obsolete-function-alias 'dirtrack-debug-toggle 'dirtrack-debug-mode
-  "23.1")
-(define-obsolete-variable-alias 'dirtrack-debug 'dirtrack-debug-mode "23.1")
 (define-minor-mode dirtrack-debug-mode
   "Toggle Dirtrack debugging."
   nil nil nil
diff --git a/lisp/emacs-lisp/crm.el b/lisp/emacs-lisp/crm.el
index 65483d0..89d106e 100644
--- a/lisp/emacs-lisp/crm.el
+++ b/lisp/emacs-lisp/crm.el
@@ -270,12 +270,6 @@ with empty strings removed."
     (remove-hook 'choose-completion-string-functions
                 'crm--choose-completion-string)))
 
-(define-obsolete-function-alias 'crm-minibuffer-complete 'crm-complete "23.1")
-(define-obsolete-function-alias
-  'crm-minibuffer-completion-help 'crm-completion-help "23.1")
-(define-obsolete-function-alias
-  'crm-minibuffer-complete-and-exit 'crm-complete-and-exit "23.1")
-
 ;; testing and debugging
 ;; (defun crm-init-test-environ ()
 ;;   "Set up some variables for testing."
diff --git a/lisp/emacs-lisp/easymenu.el b/lisp/emacs-lisp/easymenu.el
index 6ba8b99..73dabef 100644
--- a/lisp/emacs-lisp/easymenu.el
+++ b/lisp/emacs-lisp/easymenu.el
@@ -29,16 +29,6 @@
 
 ;;; Code:
 
-(defvar easy-menu-precalculate-equivalent-keybindings nil
-  "Determine when equivalent key bindings are computed for easy-menu menus.
-It can take some time to calculate the equivalent key bindings that are shown
-in a menu.  If the variable is on, then this calculation gives a (maybe
-noticeable) delay when a mode is first entered.  If the variable is off, then
-this delay will come when a menu is displayed the first time.  If you never use
-menus, turn this variable off, otherwise it is probably better to keep it on.")
-(make-obsolete-variable
- 'easy-menu-precalculate-equivalent-keybindings nil "23.1")
-
 (defsubst easy-menu-intern (s)
   (if (stringp s) (intern s) s))
 
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el
index 1311d94..d0c28ec 100644
--- a/lisp/emacs-lisp/lisp-mode.el
+++ b/lisp/emacs-lisp/lisp-mode.el
@@ -785,8 +785,6 @@ or to switch back to an existing one."
             nil)))
       (comment-indent-default)))
 
-(define-obsolete-function-alias 'lisp-mode-auto-fill 'do-auto-fill "23.1")
-
 (defcustom lisp-indent-offset nil
   "If non-nil, indent second line of expressions that many more columns."
   :group 'lisp
diff --git a/lisp/epa.el b/lisp/epa.el
index d190824..5140d3f 100644
--- a/lisp/epa.el
+++ b/lisp/epa.el
@@ -666,10 +666,6 @@ If SECRET is non-nil, list secret keys instead of public 
keys."
          (goto-char (point-min)))
        (display-buffer buffer)))))
 
-(defun epa-display-verify-result (verify-result)
-  (declare (obsolete epa-display-info "23.1"))
-  (epa-display-info (epg-verify-result-to-string verify-result)))
-
 (defun epa-passphrase-callback-function (context key-id handback)
   (if (eq key-id 'SYM)
       (read-passwd
diff --git a/lisp/epg.el b/lisp/epg.el
index 96af3ad..920b853 100644
--- a/lisp/epg.el
+++ b/lisp/epg.el
@@ -190,6 +190,7 @@
   (string nil :read-only t))
 
 ;;;; Context Struct
+(declare-function epa-passphrase-callback-function "epa.el")
 
 (cl-defstruct (epg-context
                (:constructor nil)
@@ -215,7 +216,7 @@
   cipher-algorithm
   digest-algorithm
   compress-algorithm
-  (passphrase-callback (list #'epg-passphrase-callback-function))
+  (passphrase-callback (list #'epa-passphrase-callback-function))
   progress-callback
   edit-callback
   signers
@@ -1246,19 +1247,6 @@ callback data (if any)."
 
 ;;; Functions
 
-(defun epg-passphrase-callback-function (context key-id _handback)
-  (declare (obsolete epa-passphrase-callback-function "23.1"))
-  (if (eq key-id 'SYM)
-      (read-passwd "Passphrase for symmetric encryption: "
-                  (eq (epg-context-operation context) 'encrypt))
-    (read-passwd
-     (if (eq key-id 'PIN)
-       "Passphrase for PIN: "
-       (let ((entry (assoc key-id epg-user-id-alist)))
-        (if entry
-            (format "Passphrase for %s %s: " key-id (cdr entry))
-          (format "Passphrase for %s: " key-id)))))))
-
 (defun epg--list-keys-1 (context name mode)
   (let ((args (append (if (epg-context-home-directory context)
                          (list "--homedir"
diff --git a/lisp/eshell/em-rebind.el b/lisp/eshell/em-rebind.el
index bf5a4bf..7991c63 100644
--- a/lisp/eshell/em-rebind.el
+++ b/lisp/eshell/em-rebind.el
@@ -114,7 +114,6 @@ This is default behavior of shells like bash."
     backward-list
     forward-page
     backward-page
-    forward-point
     forward-paragraph
     backward-paragraph
     backward-prefix-chars
diff --git a/lisp/eshell/eshell.el b/lisp/eshell/eshell.el
index 5ffb159..6698ca4 100644
--- a/lisp/eshell/eshell.el
+++ b/lisp/eshell/eshell.el
@@ -384,15 +384,6 @@ corresponding to a successful execution."
              (set status-var eshell-last-command-status))
          (cadr result))))))
 
-;;;_* Reporting bugs
-;;
-;; If you do encounter a bug, on any system, please report
-;; it -- in addition to any particular oddities in your configuration
-;; -- so that the problem may be corrected for the benefit of others.
-
-;;;###autoload
-(define-obsolete-function-alias 'eshell-report-bug 'report-emacs-bug "23.1")
-
 ;;; Code:
 
 (defun eshell-unload-all-modules ()
diff --git a/lisp/ffap.el b/lisp/ffap.el
index ceba9d2..4a50620 100644
--- a/lisp/ffap.el
+++ b/lisp/ffap.el
@@ -1825,12 +1825,6 @@ Only intended for interactive use."
 (defalias 'find-file-literally-at-point 'ffap-literally)
 
 
-;;; Bug Reporter:
-
-(define-obsolete-function-alias 'ffap-bug 'report-emacs-bug "23.1")
-(define-obsolete-function-alias 'ffap-submit-bug 'report-emacs-bug "23.1")
-
-
 ;;; Hooks for Gnus, VM, Rmail:
 ;;
 ;; If you do not like these bindings, write versions with whatever
diff --git a/lisp/files.el b/lisp/files.el
index 9270f33..f92c379 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -985,14 +985,6 @@ one or more of those symbols."
       (completion-table-with-context
        string-dir names string-file pred action)))))
 
-(defun locate-file-completion (string path-and-suffixes action)
-  "Do completion for file names passed to `locate-file'.
-PATH-AND-SUFFIXES is a pair of lists, (DIRECTORIES . SUFFIXES)."
-  (declare (obsolete locate-file-completion-table "23.1"))
-  (locate-file-completion-table (car path-and-suffixes)
-                                (cdr path-and-suffixes)
-                                string nil action))
-
 (defvar locate-dominating-stop-dir-regexp
   (purecopy 
"\\`\\(?:[\\/][\\/][^\\/]+[\\/]\\|/\\(?:net\\|afs\\|\\.\\.\\.\\)/\\)\\'")
   "Regexp of directory names that stop the search in `locate-dominating-file'.
diff --git a/lisp/gnus/mml-smime.el b/lisp/gnus/mml-smime.el
index 4754f37..acddb30 100644
--- a/lisp/gnus/mml-smime.el
+++ b/lisp/gnus/mml-smime.el
@@ -329,7 +329,6 @@ Whether the passphrase is cached at all is controlled by
   (autoload 'epg-verify-string "epg")
   (autoload 'epg-sign-string "epg")
   (autoload 'epg-encrypt-string "epg")
-  (autoload 'epg-passphrase-callback-function "epg")
   (autoload 'epg-context-set-passphrase-callback "epg")
   (autoload 'epg-sub-key-fingerprint "epg")
   (autoload 'epg-configuration "epg-config")
diff --git a/lisp/gnus/mml1991.el b/lisp/gnus/mml1991.el
index 8be1b84..88864ea 100644
--- a/lisp/gnus/mml1991.el
+++ b/lisp/gnus/mml1991.el
@@ -242,7 +242,6 @@ Whether the passphrase is cached at all is controlled by
 (defvar epg-user-id-alist)
 
 (autoload 'epg-make-context "epg")
-(autoload 'epg-passphrase-callback-function "epg")
 (autoload 'epa-select-keys "epa")
 (autoload 'epg-list-keys "epg")
 (autoload 'epg-context-set-armor "epg")
diff --git a/lisp/gnus/mml2015.el b/lisp/gnus/mml2015.el
index d1d150a..45c9bbf 100644
--- a/lisp/gnus/mml2015.el
+++ b/lisp/gnus/mml2015.el
@@ -712,7 +712,6 @@ If set, it overrides the setting of 
`mml2015-sign-with-sender'."
 (autoload 'epg-verify-string "epg")
 (autoload 'epg-sign-string "epg")
 (autoload 'epg-encrypt-string "epg")
-(autoload 'epg-passphrase-callback-function "epg")
 (autoload 'epg-context-set-passphrase-callback "epg")
 (autoload 'epg-key-sub-key-list "epg")
 (autoload 'epg-sub-key-capability "epg")
diff --git a/lisp/hi-lock.el b/lisp/hi-lock.el
index 33ca40f..0ffe77d 100644
--- a/lisp/hi-lock.el
+++ b/lisp/hi-lock.el
@@ -237,17 +237,11 @@ Instead, each hi-lock command will cycle through the 
faces in
   "Human-readable lighters for `hi-lock-interactive-patterns'.")
 (put 'hi-lock-interactive-lighters 'permanent-local t)
 
-(define-obsolete-variable-alias 'hi-lock-face-history
-                                'hi-lock-face-defaults "23.1")
 (defvar hi-lock-face-defaults
   '("hi-yellow" "hi-pink" "hi-green" "hi-blue" "hi-salmon" "hi-aquamarine"
     "hi-black-b" "hi-blue-b" "hi-red-b" "hi-green-b" "hi-black-hb")
   "Default faces for hi-lock interactive functions.")
 
-(define-obsolete-variable-alias 'hi-lock-regexp-history
-                                'regexp-history
-                                "23.1")
-
 (defvar hi-lock-file-patterns-prefix "Hi-lock"
   "String used to identify hi-lock patterns at the start of files.")
 
diff --git a/lisp/hilit-chg.el b/lisp/hilit-chg.el
index 04a5ccd..ae97bb0 100644
--- a/lisp/hilit-chg.el
+++ b/lisp/hilit-chg.el
@@ -224,9 +224,6 @@ colors then use this, if you want fancier faces then set
 ;; When you invoke highlight-changes-mode, should 
highlight-changes-visible-mode
 ;; be on or off?
 
-(define-obsolete-variable-alias 'highlight-changes-initial-state
-  'highlight-changes-visibility-initial-state "23.1")
-
 (defcustom highlight-changes-visibility-initial-state t
   "Controls whether changes are initially visible in Highlight Changes mode.
 
@@ -236,13 +233,7 @@ When a buffer is in Highlight Changes mode the function
   :type 'boolean
   :group 'highlight-changes)
 
-;; highlight-changes-global-initial-state has been removed
-
-
-
 ;; These are the strings displayed in the mode-line for the minor mode:
-(define-obsolete-variable-alias 'highlight-changes-active-string
-  'highlight-changes-visible-string "23.1")
 
 (defcustom highlight-changes-visible-string " +Chg"
   "The string used when in Highlight Changes mode and changes are visible.
@@ -252,9 +243,6 @@ a string with a leading space."
                 (const :tag "None"  nil))
   :group 'highlight-changes)
 
-(define-obsolete-variable-alias 'highlight-changes-passive-string
-  'highlight-changes-invisible-string "23.1")
-
 (defcustom highlight-changes-invisible-string " -Chg"
   "The string used when in Highlight Changes mode and changes are hidden.
 This should be set to nil if no indication is desired, or to
@@ -957,10 +945,6 @@ changes are made, so \\[highlight-changes-next-change] and
 (define-globalized-minor-mode global-highlight-changes-mode
   highlight-changes-mode highlight-changes-mode-turn-on)
 
-(define-obsolete-function-alias
- 'global-highlight-changes
-  'global-highlight-changes-mode "23.1")
-
 (defun highlight-changes-mode-turn-on ()
   "See if Highlight Changes mode should be turned on for this buffer.
 This is called when `global-highlight-changes-mode' is turned on."
diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el
index 7714a77..5fe931d 100644
--- a/lisp/international/mule-cmds.el
+++ b/lisp/international/mule-cmds.el
@@ -2968,11 +2968,6 @@ on encoding."
 ;; Doc said "obsolete" in 23.1, this statement only added in 24.1.
 (make-obsolete 'unify-8859-on-decoding-mode "don't use it." "23.1")
 
-(defvar nonascii-insert-offset 0)
-(make-obsolete-variable 'nonascii-insert-offset "do not use it." "23.1")
-(defvar nonascii-translation-table nil)
-(make-obsolete-variable 'nonascii-translation-table "do not use it." "23.1")
-
 (defvar ucs-names nil
   "Hash table of cached CHAR-NAME keys to CHAR-CODE values.")
 
diff --git a/lisp/international/mule-diag.el b/lisp/international/mule-diag.el
index 80e78ef..b13bde5 100644
--- a/lisp/international/mule-diag.el
+++ b/lisp/international/mule-diag.el
@@ -200,10 +200,6 @@ Character sets for defining other charsets, or for 
backward compatibility
 ;;;               (charset-iso-graphic-plane charset)
                   (charset-description charset)))))
 
-(defvar non-iso-charset-alist nil
-  "Obsolete.")
-(make-obsolete-variable 'non-iso-charset-alist "no longer relevant." "23.1")
-
 ;; A variable to hold charset input history.
 (defvar charset-history nil)
 
diff --git a/lisp/international/mule-util.el b/lisp/international/mule-util.el
index 5cc10b1..660ac58 100644
--- a/lisp/international/mule-util.el
+++ b/lisp/international/mule-util.el
@@ -275,15 +275,6 @@ operations such as `find-coding-systems-region'."
 (put 'with-coding-priority 'edebug-form-spec t)
 
 ;;;###autoload
-(defmacro detect-coding-with-priority (from to priority-list)
-  "Detect a coding system of the text between FROM and TO with PRIORITY-LIST.
-PRIORITY-LIST is an alist of coding categories vs the corresponding
-coding systems ordered by priority."
-  (declare (obsolete with-coding-priority "23.1"))
-  `(with-coding-priority (mapcar #'cdr ,priority-list)
-     (detect-coding-region ,from ,to)))
-
-;;;###autoload
 (defun detect-coding-with-language-environment (from to lang-env)
   "Detect a coding system for the text between FROM and TO with LANG-ENV.
 The detection takes into account the coding system priorities for the
diff --git a/lisp/international/mule.el b/lisp/international/mule.el
index df71205..092abc0 100644
--- a/lisp/international/mule.el
+++ b/lisp/international/mule.el
@@ -408,16 +408,6 @@ PLIST (property list) may contain any type of information 
a user
 ;; because that makes a bootstrapping problem
 ;; if you need to recompile all the Lisp files using interpreted code.
 
-(defun charset-id (_charset)
-  "Always return 0.  This is provided for backward compatibility."
-  (declare (obsolete nil "23.1"))
-  0)
-
-(defmacro charset-bytes (_charset)
-  "Always return 0.  This is provided for backward compatibility."
-  (declare (obsolete nil "23.1"))
-  0)
-
 (defun get-charset-property (charset propname)
   "Return the value of CHARSET's PROPNAME property.
 This is the last value stored with
@@ -463,19 +453,8 @@ Return -1 if charset isn't an ISO 2022 one."
   "Return long name of CHARSET."
   (plist-get (charset-plist charset) :long-name))
 
-(defun charset-list ()
-  "Return list of all charsets ever defined."
-  (declare (obsolete charset-list "23.1"))
-  charset-list)
-
 
 ;;; CHARACTER
-(define-obsolete-function-alias 'char-valid-p 'characterp "23.1")
-
-(defun generic-char-p (_char)
-  "Always return nil.  This is provided for backward compatibility."
-  (declare (obsolete nil "23.1"))
-  nil)
 
 (defun make-char-internal (charset-id &optional code1 code2)
   (let ((charset (aref emacs-mule-charset-table charset-id)))
@@ -1085,14 +1064,11 @@ formats (e.g. iso-latin-1-unix, koi8-r-dos)."
              (setq codings (cons alias codings))))))
     codings))
 
-(defconst char-coding-system-table nil
-  "It exists just for backward compatibility, and the value is always nil.")
-(make-obsolete-variable 'char-coding-system-table nil "23.1")
-
 (defun transform-make-coding-system-args (name type &optional doc-string props)
   "For internal use only.
 Transform XEmacs style args for `make-coding-system' to Emacs style.
 Value is a list of transformed arguments."
+  (declare (obsolete nil "28.1"))
   (let ((mnemonic (string-to-char (or (plist-get props 'mnemonic) "?")))
        (eol-type (plist-get props 'eol-type))
        properties tmp)
@@ -1170,106 +1146,6 @@ Value is a list of transformed arguments."
       (error "unsupported XEmacs style make-coding-style arguments: %S"
             `(,name ,type ,doc-string ,props))))))
 
-(defun make-coding-system (coding-system type mnemonic doc-string
-                                        &optional
-                                        flags
-                                        properties
-                                        eol-type)
-  "Define a new coding system CODING-SYSTEM (symbol).
-This function is provided for backward compatibility."
-  (declare (obsolete define-coding-system "23.1"))
-  ;; For compatibility with XEmacs, we check the type of TYPE.  If it
-  ;; is a symbol, perhaps, this function is called with XEmacs-style
-  ;; arguments.  Here, try to transform that kind of arguments to
-  ;; Emacs style.
-  (if (symbolp type)
-      (let ((args (transform-make-coding-system-args coding-system type
-                                                    mnemonic doc-string)))
-       (setq coding-system (car args)
-             type (nth 1 args)
-             mnemonic (nth 2 args)
-             doc-string (nth 3 args)
-             flags (nth 4 args)
-             properties (nth 5 args)
-             eol-type (nth 6 args))))
-
-  (setq type
-       (cond ((eq type 0) 'emacs-mule)
-             ((eq type 1) 'shift-jis)
-             ((eq type 2) 'iso2022)
-             ((eq type 3) 'big5)
-             ((eq type 4) 'ccl)
-             ((eq type 5) 'raw-text)
-             (t
-              (error "Invalid coding system type: %s" type))))
-
-  (setq properties
-       (let ((plist nil) key)
-         (dolist (elt properties)
-           (setq key (car elt))
-           (cond ((eq key 'post-read-conversion)
-                  (setq key :post-read-conversion))
-                 ((eq key 'pre-write-conversion)
-                  (setq key :pre-write-conversion))
-                 ((eq key 'translation-table-for-decode)
-                  (setq key :decode-translation-table))
-                 ((eq key 'translation-table-for-encode)
-                  (setq key :encode-translation-table))
-                 ((eq key 'safe-charsets)
-                  (setq key :charset-list))
-                 ((eq key 'mime-charset)
-                  (setq key :mime-charset))
-                 ((eq key 'valid-codes)
-                  (setq key :valids)))
-           (setq plist (plist-put plist key (cdr elt))))
-         plist))
-  (setq properties (plist-put properties :mnemonic mnemonic))
-  (plist-put properties :coding-type type)
-  (cond ((eq eol-type 0) (setq eol-type 'unix))
-       ((eq eol-type 1) (setq eol-type 'dos))
-       ((eq eol-type 2) (setq eol-type 'mac))
-       ((vectorp eol-type) (setq eol-type nil)))
-  (plist-put properties :eol-type eol-type)
-
-  (cond
-   ((eq type 'iso2022)
-    (plist-put properties :flags
-              (list (and (or (consp (nth 0 flags))
-                             (consp (nth 1 flags))
-                             (consp (nth 2 flags))
-                             (consp (nth 3 flags))) 'designation)
-                    (or (nth 4 flags) 'long-form)
-                    (and (nth 5 flags) 'ascii-at-eol)
-                    (and (nth 6 flags) 'ascii-at-cntl)
-                    (and (nth 7 flags) '7-bit)
-                    (and (nth 8 flags) 'locking-shift)
-                    (and (nth 9 flags) 'single-shift)
-                    (and (nth 10 flags) 'use-roman)
-                    (and (nth 11 flags) 'use-oldjis)
-                    (or (nth 12 flags) 'direction)
-                    (and (nth 13 flags) 'init-at-bol)
-                    (and (nth 14 flags) 'designate-at-bol)
-                    (and (nth 15 flags) 'safe)
-                    (and (nth 16 flags) 'latin-extra)))
-    (plist-put properties :designation
-              (let ((vec (make-vector 4 nil)))
-                (dotimes (i 4)
-                  (let ((spec (nth i flags)))
-                    (if (eq spec t)
-                        (aset vec i '(94 96))
-                    (if (consp spec)
-                        (progn
-                          (if (memq t spec)
-                              (setq spec (append (delq t spec) '(94 96))))
-                          (aset vec i spec))))))
-                vec)))
-
-   ((eq type 'ccl)
-    (plist-put properties :ccl-decoder (car flags))
-    (plist-put properties :ccl-encoder (cdr flags))))
-
-  (apply 'define-coding-system coding-system doc-string properties))
-
 (defun merge-coding-systems (first second)
   "Fill in any unspecified aspects of coding system FIRST from SECOND.
 Return the resulting coding system."
@@ -1616,15 +1492,6 @@ This setting is effective for the next communication 
only."
 
   (setq next-selection-coding-system coding-system))
 
-(defun set-coding-priority (arg)
-  "Set priority of coding categories according to ARG.
-ARG is a list of coding categories ordered by priority.
-
-This function is provided for backward compatibility."
-  (declare (obsolete set-coding-system-priority "23.1"))
-  (apply 'set-coding-system-priority
-        (mapcar #'(lambda (x) (symbol-value x)) arg)))
-
 ;;; X selections
 
 (defvar ctext-non-standard-encodings-alist
diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el
index 44cde7c..312baff 100644
--- a/lisp/mail/rmail.el
+++ b/lisp/mail/rmail.el
@@ -521,25 +521,6 @@ still the current message in the Rmail buffer.")
 (defvar rmail-mmdf-delim2 "^\001\001\001\001\n"
   "Regexp marking the end of an mmdf message.")
 
-;; FIXME Post-mbox, this is now unused.
-;; In Emacs-22, this was called:
-;;  i) the very first time a message was shown.
-;; ii) when toggling the headers to the normal state, every time.
-;; It's not clear what it should do now, since there is nothing that
-;; records when a message is shown for the first time (unseen is not
-;; necessarily the same thing).
-;; See https://lists.gnu.org/r/emacs-devel/2009-03/msg00013.html
-(defcustom rmail-message-filter nil
-  "If non-nil, a filter function for new messages in RMAIL.
-Called with region narrowed to the message, including headers,
-before obeying `rmail-ignored-headers'."
-  :group 'rmail-headers
-  :type '(choice (const nil) function))
-
-(make-obsolete-variable 'rmail-message-filter
-                       "it is not used (try `rmail-show-message-hook')."
-                       "23.1")
-
 (defcustom rmail-automatic-folder-directives nil
   "List of directives specifying how to automatically file messages.
 Whenever Rmail shows a message in the folder that `rmail-file-name'
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el
index d2c3f90..0d99f46 100644
--- a/lisp/minibuffer.el
+++ b/lisp/minibuffer.el
@@ -685,13 +685,6 @@ for use at QPOS."
                completions)
        qboundary))))
 
-;; (defmacro complete-in-turn (a b) `(completion-table-in-turn ,a ,b))
-;; (defmacro dynamic-completion-table (fun) `(completion-table-dynamic ,fun))
-(define-obsolete-function-alias
-  'complete-in-turn #'completion-table-in-turn "23.1")
-(define-obsolete-function-alias
-  'dynamic-completion-table #'completion-table-dynamic "23.1")
-
 ;;; Minibuffer completion
 
 (defgroup minibuffer nil
@@ -1770,9 +1763,6 @@ It also eliminates runs of equal strings."
                              ;; Round up to a whole number of columns.
                              (* colwidth (ceiling length colwidth))))))))))))
 
-(defvar completion-common-substring nil)
-(make-obsolete-variable 'completion-common-substring nil "23.1")
-
 (defvar completion-setup-hook nil
   "Normal hook run at the end of setting up a completion list buffer.
 When this hook is run, the current buffer is the one in which the
@@ -1864,11 +1854,7 @@ It can find the completion buffer in `standard-output'."
         (insert "Possible completions are:\n")
         (completion--insert-strings completions))))
 
-  ;; The hilit used to be applied via completion-setup-hook, so there
-  ;; may still be some code that uses completion-common-substring.
-  (with-no-warnings
-    (let ((completion-common-substring common-substring))
-      (run-hooks 'completion-setup-hook)))
+  (run-hooks 'completion-setup-hook)
   nil)
 
 (defvar completion-extra-properties nil
@@ -2374,8 +2360,6 @@ The completion method is determined by 
`completion-at-point-functions'."
 Gets combined either with `minibuffer-local-completion-map' or
 with `minibuffer-local-must-match-map'.")
 
-(define-obsolete-variable-alias 'minibuffer-local-must-match-filename-map
-  'minibuffer-local-filename-must-match-map "23.1")
 (defvar minibuffer-local-filename-must-match-map (make-sparse-keymap))
 (make-obsolete-variable 'minibuffer-local-filename-must-match-map nil "24.1")
 
diff --git a/lisp/mouse.el b/lisp/mouse.el
index d369545..a06ca2a 100644
--- a/lisp/mouse.el
+++ b/lisp/mouse.el
@@ -274,34 +274,6 @@ not it is actually displayed."
            local-menu
            minor-mode-menus)))
 
-(defun mouse-major-mode-menu (event &optional prefix)
-  "Pop up a mode-specific menu of mouse commands.
-Default to the Edit menu if the major mode doesn't define a menu."
-  (declare (obsolete mouse-menu-major-mode-map "23.1"))
-  (interactive "@e\nP")
-  (run-hooks 'activate-menubar-hook 'menu-bar-update-hook)
-  (popup-menu (mouse-menu-major-mode-map) event prefix))
-
-(defun mouse-popup-menubar (event prefix)
-  "Pop up a menu equivalent to the menu bar for keyboard EVENT with PREFIX.
-The contents are the items that would be in the menu bar whether or
-not it is actually displayed."
-  (declare (obsolete mouse-menu-bar-map "23.1"))
-  (interactive "@e \nP")
-  (run-hooks 'activate-menubar-hook 'menu-bar-update-hook)
-  (popup-menu (mouse-menu-bar-map) (unless (integerp event) event) prefix))
-
-(defun mouse-popup-menubar-stuff (event prefix)
-  "Popup a menu like either `mouse-major-mode-menu' or `mouse-popup-menubar'.
-Use the former if the menu bar is showing, otherwise the latter."
-  (declare (obsolete nil "23.1"))
-  (interactive "@e\nP")
-  (run-hooks 'activate-menubar-hook 'menu-bar-update-hook)
-  (popup-menu
-   (if (zerop (or (frame-parameter nil 'menu-bar-lines) 0))
-       (mouse-menu-bar-map)
-     (mouse-menu-major-mode-map))
-   event prefix))
 
 ;; Commands that operate on windows.
 
diff --git a/lisp/net/newst-treeview.el b/lisp/net/newst-treeview.el
index 1bed61f..ff8a447 100644
--- a/lisp/net/newst-treeview.el
+++ b/lisp/net/newst-treeview.el
@@ -131,14 +131,6 @@ groupcontent := feedname | groupdefinition)
 Example: (\"Topmost group\" \"feed1\" (\"subgroup1\" \"feed 2\")
 \"feed3\")")
 
-(defcustom newsticker-groups-filename
-  nil
-  "Name of the newsticker groups settings file."
-  :version "25.1"                       ; changed default value to nil
-  :type '(choice (const nil) string)
-  :group 'newsticker-treeview)
-(make-obsolete-variable 'newsticker-groups-filename 'newsticker-dir "23.1")
-
 ;; ======================================================================
 ;;; internal variables
 ;; ======================================================================
@@ -1265,29 +1257,9 @@ Note: does not update the layout."
 (defun newsticker--treeview-load ()
   "Load treeview settings."
   (let* ((coding-system-for-read 'utf-8)
-         (filename
-          (or (and newsticker-groups-filename
-                   (not (string=
-                         (expand-file-name newsticker-groups-filename)
-                         (expand-file-name (concat newsticker-dir "/groups"))))
-                   (file-exists-p newsticker-groups-filename)
-                   (y-or-n-p
-                    (format-message
-                     (concat "Obsolete variable `newsticker-groups-filename' "
-                             "points to existing file \"%s\".\n"
-                             "Read it? ")
-                     newsticker-groups-filename))
-                   newsticker-groups-filename)
-              (concat newsticker-dir "/groups")))
+         (filename (concat newsticker-dir "/groups"))
          (buf (and (file-exists-p filename)
                    (find-file-noselect filename))))
-    (and newsticker-groups-filename
-         (file-exists-p newsticker-groups-filename)
-        (y-or-n-p (format-message
-                    (concat "Delete the file \"%s\",\nto which the obsolete "
-                            "variable `newsticker-groups-filename' points ? ")
-                    newsticker-groups-filename))
-        (delete-file newsticker-groups-filename))
     (when buf
       (set-buffer buf)
       (goto-char (point-min))
diff --git a/lisp/obsolete/tpu-edt.el b/lisp/obsolete/tpu-edt.el
index d71f79c..0de7aa0 100644
--- a/lisp/obsolete/tpu-edt.el
+++ b/lisp/obsolete/tpu-edt.el
@@ -287,14 +287,6 @@
 ;;;
 ;;;  User Configurable Variables
 ;;;
-(defcustom tpu-have-ispell t
-  "Non-nil means `tpu-spell-check' uses `ispell-region' for spell checking.
-Otherwise, use `spell-region'."
-  :type 'boolean
-  :group 'tpu)
-(make-obsolete-variable 'tpu-have-ispell "the `spell' package is obsolete."
-                        "23.1")
-
 (defcustom tpu-kill-buffers-silently nil
   "If non-nil, TPU-edt kills modified buffers without asking."
   :type 'boolean
@@ -315,7 +307,6 @@ Otherwise, use `spell-region'."
 ;;;  Global Keymaps
 ;;;
 
-(define-obsolete-variable-alias 'GOLD-map 'tpu-gold-map "23.1")
 (defvar tpu-gold-map
   (let ((map (make-keymap)))
     ;; Previously we used escape sequences here.  We now instead presume
@@ -892,8 +883,7 @@ With argument, fill and justify."
 if no region is selected."
   (interactive)
   (let ((m (tpu-mark)))
-    (apply (if tpu-have-ispell 'ispell-region
-             'spell-region)
+    (apply 'ispell-region
            (if m
                (if (> m (point)) (list (point) m)
                  (list m (point)))
diff --git a/lisp/password-cache.el b/lisp/password-cache.el
index f500757..2443f37 100644
--- a/lisp/password-cache.el
+++ b/lisp/password-cache.el
@@ -94,22 +94,6 @@ The variable `password-cache' control whether the cache is 
used."
   (or (password-read-from-cache key)
       (read-passwd prompt)))
 
-(defun password-read-and-add (prompt &optional key)
-  "Read password, for use with KEY, from user, or from cache if wanted.
-Then store the password in the cache.  Uses `password-read' and
-`password-cache-add'.  Custom variables `password-cache' and
-`password-cache-expiry' regulate cache behavior.
-
-Warning: the password is cached without checking that it is
-correct.  It is better to check the password before caching.  If
-you must use this function, take care to check passwords and
-remove incorrect ones from the cache."
-  (declare (obsolete password-read "23.1"))
-  (let ((password (password-read prompt key)))
-    (when (and password key)
-      (password-cache-add key password))
-    password))
-
 (defun password-cache-remove (key)
   "Remove password indexed by KEY from password cache.
 This is typically run by a timer setup from `password-cache-add',
diff --git a/lisp/shell.el b/lisp/shell.el
index f5e18bb..301a8cb 100644
--- a/lisp/shell.el
+++ b/lisp/shell.el
@@ -990,9 +990,6 @@ this feature; see the function `dirtrack-mode'."
       (add-hook 'comint-input-filter-functions #'shell-directory-tracker nil t)
     (remove-hook 'comint-input-filter-functions #'shell-directory-tracker t)))
 
-(define-obsolete-function-alias 'shell-dirtrack-toggle #'shell-dirtrack-mode
-  "23.1")
-
 (defun shell-cd (dir)
   "Do normal `cd' to DIR, and set `list-buffers-directory'."
   (cd dir)
diff --git a/lisp/subr.el b/lisp/subr.el
index 6bd06a0..8eb4cf4 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -1583,11 +1583,6 @@ be a list of the form returned by `event-start' and 
`event-end'."
 (make-obsolete 'string-as-multibyte "use `decode-coding-string'." "26.1")
 (make-obsolete 'string-make-multibyte "use `decode-coding-string'." "26.1")
 
-(defun forward-point (n)
-  "Return buffer position N characters after (before if N negative) point."
-  (declare (obsolete "use (+ (point) N) instead." "23.1"))
-  (+ (point) n))
-
 (defun log10 (x)
   "Return (log X 10), the log base 10 of X."
   (declare (obsolete log "24.4"))
@@ -1612,8 +1607,6 @@ be a list of the form returned by `event-start' and 
`event-end'."
 (make-obsolete 'set-window-redisplay-end-trigger nil "23.1")
 
 (make-obsolete 'run-window-configuration-change-hook nil "27.1")
-(make-obsolete 'process-filter-multibyte-p nil "23.1")
-(make-obsolete 'set-process-filter-multibyte nil "23.1")
 
 (make-obsolete-variable 'command-debug-status
                         "expect it to be removed in a future version." "25.2")
diff --git a/lisp/t-mouse.el b/lisp/t-mouse.el
index a1af53d..4feab71 100644
--- a/lisp/t-mouse.el
+++ b/lisp/t-mouse.el
@@ -63,8 +63,6 @@
   (set-terminal-parameter nil 'gpm-mouse-active nil))
 
 ;;;###autoload
-(define-obsolete-function-alias 't-mouse-mode 'gpm-mouse-mode "23.1")
-;;;###autoload
 (define-minor-mode gpm-mouse-mode
   "Toggle mouse support in GNU/Linux consoles (GPM Mouse mode).
 
diff --git a/lisp/term/w32-win.el b/lisp/term/w32-win.el
index 5901e02..e866fdc 100644
--- a/lisp/term/w32-win.el
+++ b/lisp/term/w32-win.el
@@ -78,12 +78,8 @@
 (require 'dnd)
 (require 'w32-vars)
 
-;; Keep an obsolete alias for w32-focus-frame and w32-select-font in case
-;; they are used by code outside Emacs.
-(define-obsolete-function-alias 'w32-focus-frame 'x-focus-frame "23.1")
 (declare-function x-select-font "w32font.c"
                   (&optional frame exclude-proportional))
-(define-obsolete-function-alias 'w32-select-font 'x-select-font "23.1")
 
 (defvar w32-color-map) ;; defined in w32fns.c
 (make-obsolete 'w32-default-color-map nil "24.1")
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el
index 65f6164..ffcdb9b 100644
--- a/lisp/textmodes/ispell.el
+++ b/lisp/textmodes/ispell.el
@@ -621,15 +621,6 @@ For Aspell, non-nil also means to try to automatically 
find its dictionaries.
 Earlier Aspell versions do not consistently support charset encoding.  Handling
 this would require some extra guessing in `ispell-aspell-find-dictionary'.")
 
-(defvar ispell-aspell-supports-utf8 nil
-  "Non-nil if Aspell has consistent command line UTF-8 support.  Obsolete.
-ispell.el and flyspell.el will use for this purpose the more generic
-variable `ispell-encoding8-command' for both Aspell and Hunspell.  Is left
-here just for backwards compatibility.")
-
-(make-obsolete-variable 'ispell-aspell-supports-utf8
-                        'ispell-encoding8-command "23.1")
-
 (defvar ispell-dicts-name2locale-equivs-alist
   '(("american"      "en_US")
     ("brasileiro"    "pt_BR")
diff --git a/lisp/textmodes/remember.el b/lisp/textmodes/remember.el
index 279dbb4..7bc7dc1 100644
--- a/lisp/textmodes/remember.el
+++ b/lisp/textmodes/remember.el
@@ -487,9 +487,6 @@ Most useful for remembering things from other applications."
   (interactive)
   (remember-region (point-min) (point-max)))
 
-;; Org needs this
-(define-obsolete-function-alias 'remember-buffer 'remember-finalize "23.1")
-
 (defun remember-destroy ()
   "Destroy the current *Remember* buffer."
   (interactive)
diff --git a/lisp/tooltip.el b/lisp/tooltip.el
index f35f6b9..5f5a478 100644
--- a/lisp/tooltip.el
+++ b/lisp/tooltip.el
@@ -167,8 +167,6 @@ This variable has effect only on GUI frames."
 
 ;;; Variables that are not customizable.
 
-(define-obsolete-variable-alias 'tooltip-hook 'tooltip-functions "23.1")
-
 (defvar tooltip-functions nil
   "Functions to call to display tooltips.
 Each function is called with one argument EVENT which is a copy
diff --git a/lisp/url/url-util.el b/lisp/url/url-util.el
index 6dd7a9c..0a7e7e2 100644
--- a/lisp/url/url-util.el
+++ b/lisp/url/url-util.el
@@ -569,31 +569,6 @@ Has a preference for looking backward when not directly on 
a symbol."
          (setq url nil))
       url)))
 
-(defun url-generate-unique-filename (&optional fmt)
-  "Generate a unique filename in `url-temporary-directory'."
-  (declare (obsolete make-temp-file "23.1"))
-  ;; This variable is obsolete, but so is this function.
-  (let ((tempdir (with-no-warnings url-temporary-directory)))
-    (if (not fmt)
-       (let ((base (format "url-tmp.%d" (user-real-uid)))
-             (fname "")
-             (x 0))
-         (setq fname (format "%s%d" base x))
-         (while (file-exists-p
-                 (expand-file-name fname tempdir))
-           (setq x (1+ x)
-                 fname (concat base (int-to-string x))))
-         (expand-file-name fname tempdir))
-      (let ((base (concat "url" (int-to-string (user-real-uid))))
-           (fname "")
-           (x 0))
-       (setq fname (format fmt (concat base (int-to-string x))))
-       (while (file-exists-p
-               (expand-file-name fname tempdir))
-         (setq x (1+ x)
-               fname (format fmt (concat base (int-to-string x)))))
-       (expand-file-name fname tempdir)))))
-
 (defun url-extract-mime-headers ()
   "Set `url-current-mime-headers' in current buffer."
   (save-excursion
diff --git a/lisp/url/url-vars.el b/lisp/url/url-vars.el
index d9277cf..e35823a 100644
--- a/lisp/url/url-vars.el
+++ b/lisp/url/url-vars.el
@@ -312,13 +312,6 @@ Applies when a protected document is denied by the server."
   :type 'integer
   :group 'url)
 
-(defcustom url-temporary-directory (or (getenv "TMPDIR") "/tmp")
-  "Where temporary files go."
-  :type 'directory
-  :group 'url-file)
-(make-obsolete-variable 'url-temporary-directory
-                       'temporary-file-directory "23.1")
-
 (defcustom url-show-status t
   "Whether to show a running total of bytes transferred.
 Can cause a large hit if using a remote X display over a slow link, or
diff --git a/lisp/vc/vc-hooks.el b/lisp/vc/vc-hooks.el
index ce72a49..f09cedd 100644
--- a/lisp/vc/vc-hooks.el
+++ b/lisp/vc/vc-hooks.el
@@ -505,14 +505,6 @@ If FILE is not registered, this function always returns 
nil."
                            (vc-call-backend
                             backend 'working-revision file))))))
 
-;; Backward compatibility.
-(define-obsolete-function-alias
-  'vc-workfile-version 'vc-working-revision "23.1")
-(defun vc-default-working-revision (backend file)
-  (message
-   "`working-revision' not found: using the old `workfile-version' instead")
-  (vc-call-backend backend 'workfile-version file))
-
 (defun vc-default-registered (backend file)
   "Check if FILE is registered in BACKEND using vc-BACKEND-master-templates."
   (let ((sym (vc-make-backend-sym backend 'master-templates)))
diff --git a/lisp/vc/vc-mtn.el b/lisp/vc/vc-mtn.el
index 092d8b5..3c26ffc 100644
--- a/lisp/vc/vc-mtn.el
+++ b/lisp/vc/vc-mtn.el
@@ -60,7 +60,6 @@ switches."
   :version "25.1"
   :group 'vc-mtn)
 
-(define-obsolete-variable-alias 'vc-mtn-command 'vc-mtn-program "23.1")
 (defcustom vc-mtn-program "mtn"
   "Name of the monotone executable."
   :type 'string
diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el
index 65775f8..5561292 100644
--- a/lisp/vc/vc.el
+++ b/lisp/vc/vc.el
@@ -2710,9 +2710,6 @@ to the working revision (except for keyword expansion)."
       (message "Reverting %s...done" (vc-delistify files)))))
 
 ;;;###autoload
-(define-obsolete-function-alias 'vc-revert-buffer 'vc-revert "23.1")
-
-;;;###autoload
 (defun vc-pull (&optional arg)
   "Update the current fileset or branch.
 You must be visiting a version controlled file, or in a `vc-dir' buffer.
diff --git a/lisp/vcursor.el b/lisp/vcursor.el
index fa0cbb7..3601abc 100644
--- a/lisp/vcursor.el
+++ b/lisp/vcursor.el
@@ -1132,9 +1132,6 @@ line is treated like ordinary characters."
     (vcursor-copy (if (or (= count 0) arg) (1+ count) count)))
   )
 
-(define-obsolete-function-alias
-  'vcursor-toggle-vcursor-map 'vcursor-use-vcursor-map "23.1")
-
 (defun vcursor-post-command ()
   (and vcursor-auto-disable (not vcursor-last-command)
        vcursor-overlay
diff --git a/src/coding.c b/src/coding.c
index 071124b..1d79c70 100644
--- a/src/coding.c
+++ b/src/coding.c
@@ -11829,8 +11829,7 @@ Each element is one element list of coding system name.
 This variable is given to `completing-read' as COLLECTION argument.
 
 Do not alter the value of this variable manually.  This variable should be
-updated by the functions `make-coding-system' and
-`define-coding-system-alias'.  */);
+updated by `define-coding-system-alias'.  */);
   Vcoding_system_alist = Qnil;
 
   DEFVAR_LISP ("coding-category-list", Vcoding_category_list,
diff --git a/test/manual/etags/c-src/abbrev.c b/test/manual/etags/c-src/abbrev.c
index 03b9f0e..44563d6 100644
--- a/test/manual/etags/c-src/abbrev.c
+++ b/test/manual/etags/c-src/abbrev.c
@@ -78,9 +78,6 @@ Lisp_Object Vlast_abbrev_text;
 
 int last_abbrev_point;
 
-/* Hook to run before expanding any abbrev.  */
-
-Lisp_Object Vpre_abbrev_expand_hook, Qpre_abbrev_expand_hook;
 
 DEFUN ("make-abbrev-table", Fmake_abbrev_table, Smake_abbrev_table, 0, 0, 0,
   "Create a new, empty abbrev table object.")
@@ -232,9 +229,6 @@ Returns the abbrev symbol, if expansion took place.")
 
   value = Qnil;
 
-  if (!NILP (Vrun_hooks))
-    call1 (Vrun_hooks, Qpre_abbrev_expand_hook);
-
   wordstart = 0;
   if (!(BUFFERP (Vabbrev_start_location_buffer)
        && XBUFFER (Vabbrev_start_location_buffer) == current_buffer))
@@ -595,14 +589,6 @@ This causes `save-some-buffers' to offer to save the 
abbrevs.");
     "*Set non-nil means expand multi-word abbrevs all caps if abbrev was so.");
   abbrev_all_caps = 0;
 
-  DEFVAR_LISP ("pre-abbrev-expand-hook", &Vpre_abbrev_expand_hook,
-    "Function or functions to be called before abbrev expansion is done.\n\
-This is the first thing that `expand-abbrev' does, and so this may change\n\
-the current abbrev table before abbrev lookup happens.");
-  Vpre_abbrev_expand_hook = Qnil;
-  Qpre_abbrev_expand_hook = intern ("pre-abbrev-expand-hook");
-  staticpro (&Qpre_abbrev_expand_hook);
-
   defsubr (&Smake_abbrev_table);
   defsubr (&Sclear_abbrev_table);
   defsubr (&Sdefine_abbrev);



reply via email to

[Prev in Thread] Current Thread [Next in Thread]