Add Emacs 27 compatibility hack
* lisp/progmodes/xref.el: Add Emacs 27 compatibility hack, for the standalone version of this package.
This commit is contained in:
parent
89d64fca75
commit
9d8202b45e
1 changed files with 14 additions and 0 deletions
|
@ -74,6 +74,20 @@
|
||||||
(require 'ring)
|
(require 'ring)
|
||||||
(require 'project)
|
(require 'project)
|
||||||
|
|
||||||
|
(eval-and-compile
|
||||||
|
(when (version< emacs-version "28")
|
||||||
|
;; etags.el in Emacs 26 and 27 uses EIEIO, and its location type
|
||||||
|
;; inherits from `xref-location'.
|
||||||
|
(require 'eieio)
|
||||||
|
|
||||||
|
;; Suppressing byte-compilation warnings (in Emacs 28+) about
|
||||||
|
;; `defclass' not being defined, which happens because the
|
||||||
|
;; `require' statement above is not evaluated either.
|
||||||
|
;; FIXME: Use `with-suppressed-warnings' when we stop supporting Emacs 26.
|
||||||
|
(with-no-warnings
|
||||||
|
(defclass xref-location () ()
|
||||||
|
:documentation "(Obsolete) location represents a position in a file or buffer."))))
|
||||||
|
|
||||||
(defgroup xref nil "Cross-referencing commands."
|
(defgroup xref nil "Cross-referencing commands."
|
||||||
:version "25.1"
|
:version "25.1"
|
||||||
:group 'tools)
|
:group 'tools)
|
||||||
|
|
Loading…
Add table
Reference in a new issue