[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/d-mode bc725ef 296/346: Use a conditional compilation macr
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/d-mode bc725ef 296/346: Use a conditional compilation macro for version checks |
Date: |
Sun, 29 Aug 2021 11:00:48 -0400 (EDT) |
branch: elpa/d-mode
commit bc725ef54e39c1d75307ca012af57f9ae1fa536a
Author: Vladimir Panteleev <git@thecybershadow.net>
Commit: Vladimir Panteleev <git@thecybershadow.net>
Use a conditional compilation macro for version checks
---
d-mode.el | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/d-mode.el b/d-mode.el
index 280fdd9..1e7f067 100644
--- a/d-mode.el
+++ b/d-mode.el
@@ -7,7 +7,7 @@
;; Maintainer: Russel Winder <russel@winder.org.uk>
;; Vladimir Panteleev <vladimir@thecybershadow.net>
;; Created: March 2007
-;; Version: 201911111516
+;; Version: 201911111704
;; Keywords: D programming language emacs cc-mode
;; Package-Requires: ((emacs "25.1"))
@@ -422,6 +422,16 @@ operators."
"Helper to precompute regular expressions for inline keyword lists." ;;
checkdoc-params: (adorn list)
(eval `(c-make-keywords-re ,adorn ,list 'd)))
+(defmacro d--if-version>= (min-version new-form &optional old-form)
+ "Conditional compilation based on the current Emacs version.
+
+Evaluate OLD-FORM if the Emacs version is older than MIN-VERSION,
+ otherwise NEW-FORM."
+ (declare (indent 2))
+ (if (version<= min-version emacs-version)
+ new-form
+ old-form))
+
;;----------------------------------------------------------------------------
;;; Workaround for special case of 'else static if' not being handled properly
(defun d-special-case-looking-at (orig-fun &rest args)
@@ -451,10 +461,6 @@ operators."
;;----------------------------------------------------------------------------
-(defconst d--long-cfdoc1-ret
- (version<= "26.0" emacs-version)
- "Whether `c-forward-decl-or-cast-1' returns a 5-element list in the current
cc-mode version.")
-
(defun d-forward-decl-or-cast-1 (preceding-token-end context last-cast-end)
"D version of `c-forward-decl-or-cast-1'." ;; checkdoc-params:
(preceding-token-end context last-cast-end)
;; (message "(d-forward-decl-or-cast-1 %S %S %S) @ %S" preceding-token-end
context last-cast-end (point))
@@ -634,7 +640,7 @@ operators."
(c-forward-sexp)
(c-forward-syntactic-ws)))
- (if d--long-cfdoc1-ret
+ (d--if-version>= "26.0"
(list id-start
nil
nil
- [nongnu] elpa/d-mode 809586a 266/346: Reorganize code, (continued)
- [nongnu] elpa/d-mode 809586a 266/346: Reorganize code, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode 4851fc2 270/346: Fix fontification of "enum" in string literals, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode 49cb5a8 275/346: Consolidate c-forward-decl-or-cast-1 annotation patch, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode 45c60e0 286/346: Fix fontification of variable declarations with top-level types, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode e9a034e 283/346: Tighten decl/arglist recognition, obsoleting another patch, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode 05fc5f1 284/346: Consolidate c-forward-decl-or-cast-1 "scope" patch, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode 44cf02b 287/346: tests: New testcase, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode 73f4bdc 292/346: Emacs 25 compatibility, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode 8e77187 293/346: Fix fontification of return statements, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode cb97457 297/346: Remove another obsolete hack, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode bc725ef 296/346: Use a conditional compilation macro for version checks,
ELPA Syncer <=
- [nongnu] elpa/d-mode c77fc0a 307/346: Skip coverage analysis when byte-compiling, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode d9e9d06 311/346: Merge d-forward-module-clause into d-forward-keyword-clause, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode f76ba89 308/346: Fontify (type-inferred) lambda arguments, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode 34f44cf 337/346: .github/workflows/test.yml: Add Emacs 27.1, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode 379b00e 144/346: Tweak intro comments a bit, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode 7d3edd2 234/346: Add test from issue #94, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode 968306a 224/346: Add a test case against the now-removed fontification hack, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode 8e208b2 232/346: Fix imenu display of functions for imenu-add-to-menubar, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode b2c9831 252/346: Make imenu hierarchical, ELPA Syncer, 2021/08/29
- [nongnu] elpa/d-mode 69df4a3 254/346: Abbreviate symbol kind in imenu entries, ELPA Syncer, 2021/08/29