diff options
author | John Wiegley <johnw@newartisans.com> | 2015-12-29 21:40:28 -0800 |
---|---|---|
committer | John Wiegley <johnw@newartisans.com> | 2015-12-29 21:40:28 -0800 |
commit | 9f2f14a0725211b13a744573344636b57b9c98b9 (patch) | |
tree | 7190e0fb3d4aa06018d8cf997f06b806fb09a9c8 /lisp/progmodes/cc-defs.el | |
parent | d259328fb87db8cc67d52771efcfa653e52c5b71 (diff) | |
parent | e823c34072bf045800d91e12c7ddb61fa23c6e30 (diff) | |
download | emacs-9f2f14a0725211b13a744573344636b57b9c98b9.tar.gz emacs-9f2f14a0725211b13a744573344636b57b9c98b9.tar.bz2 emacs-9f2f14a0725211b13a744573344636b57b9c98b9.zip |
Merge emacs-25 into master (using imerge)
Diffstat (limited to 'lisp/progmodes/cc-defs.el')
-rw-r--r-- | lisp/progmodes/cc-defs.el | 47 |
1 files changed, 16 insertions, 31 deletions
diff --git a/lisp/progmodes/cc-defs.el b/lisp/progmodes/cc-defs.el index 1b6108ef0b2..8eed4b1b86e 100644 --- a/lisp/progmodes/cc-defs.el +++ b/lisp/progmodes/cc-defs.el @@ -75,37 +75,22 @@ ;; cc-fix.el contains compatibility macros that should be used if ;; needed. -(eval-and-compile - (if (or (/= (regexp-opt-depth "\\(\\(\\)\\)") 2) - (not (fboundp 'push))) - (cc-load "cc-fix"))) - -(when (featurep 'xemacs) ; There is now (2005/12) code in GNU Emacs CVS - ; to make the call to f-l-c-k throw an error. - (eval-after-load "font-lock" - '(if (and (not (featurep 'cc-fix)) ; only load the file once. - (let (font-lock-keywords) - (font-lock-compile-keywords '("\\<\\>")) - font-lock-keywords)) ; did the previous call foul this up? - (load "cc-fix")))) - -;; The above takes care of the delayed loading, but this is necessary -;; to ensure correct byte compilation. -(eval-when-compile - (if (and (featurep 'xemacs) - (not (featurep 'cc-fix)) - (progn - (require 'font-lock) - (let (font-lock-keywords) - (font-lock-compile-keywords '("\\<\\>")) - font-lock-keywords))) - (cc-load "cc-fix"))) - -;; XEmacs 21.4 doesn't have `delete-dups'. -(eval-and-compile - (if (and (not (fboundp 'delete-dups)) - (not (featurep 'cc-fix))) - (cc-load "cc-fix"))) +(cc-conditional-require + 'cc-fix (or (/= (regexp-opt-depth "\\(\\(\\)\\)") 2) + (not (fboundp 'push)) + ;; XEmacs 21.4 doesn't have `delete-dups'. + (not (fboundp 'delete-dups)))) + +(cc-conditional-require-after-load + 'cc-fix "font-lock" + (and + (featurep 'xemacs) + (progn + (require 'font-lock) + (let (font-lock-keywords) + (font-lock-compile-keywords '("\\<\\>")) + font-lock-keywords)))) + ;;; Variables also used at compile time. |