aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard M. Stallman1998-03-08 06:45:26 +0000
committerRichard M. Stallman1998-03-08 06:45:26 +0000
commit419277c5b89ada601ed0de4e142df0fa18c9c107 (patch)
tree5774f831afd049fcf0cb7ee6cf1fc92939f54a08
parente275fa086c90111a0ca83c9bd64ce3c7debbce07 (diff)
downloademacs-419277c5b89ada601ed0de4e142df0fa18c9c107.tar.gz
emacs-419277c5b89ada601ed0de4e142df0fa18c9c107.zip
(c-enable-xemacs-performance-kludge-p): New variable.
-rw-r--r--lisp/progmodes/cc-vars.el45
1 files changed, 45 insertions, 0 deletions
diff --git a/lisp/progmodes/cc-vars.el b/lisp/progmodes/cc-vars.el
index 06dc8432eb6..9982337a57a 100644
--- a/lisp/progmodes/cc-vars.el
+++ b/lisp/progmodes/cc-vars.el
@@ -426,5 +426,50 @@ as designated in the variable `c-file-style'.")
426 426
427 427
428 428
429;; Figure out what features this Emacs has
430;;;###autoload
431(defconst c-emacs-features
432 (let ((infodock-p (boundp 'infodock-version))
433 (comments
434 ;; XEmacs 19 and beyond use 8-bit modify-syntax-entry flags.
435 ;; Emacs 19 uses a 1-bit flag. We will have to set up our
436 ;; syntax tables differently to handle this.
437 (let ((table (copy-syntax-table))
438 entry)
439 (modify-syntax-entry ?a ". 12345678" table)
440 (cond
441 ;; XEmacs 19, and beyond Emacs 19.34
442 ((arrayp table)
443 (setq entry (aref table ?a))
444 ;; In Emacs, table entries are cons cells
445 (if (consp entry) (setq entry (car entry))))
446 ;; XEmacs 20
447 ((fboundp 'get-char-table) (setq entry (get-char-table ?a table)))
448 ;; before and including Emacs 19.34
449 ((and (fboundp 'char-table-p)
450 (char-table-p table))
451 (setq entry (car (char-table-range table [?a]))))
452 ;; incompatible
453 (t (error "CC Mode is incompatible with this version of Emacs")))
454 (if (= (logand (lsh entry -16) 255) 255)
455 '8-bit
456 '1-bit))))
457 (if infodock-p
458 (list comments 'infodock)
459 (list comments)))
460 "A list of features extant in the Emacs you are using.
461There are many flavors of Emacs out there, each with different
462features supporting those needed by CC Mode. Here's the current
463supported list, along with the values for this variable:
464
465 XEmacs 19: (8-bit)
466 XEmacs 20: (8-bit)
467 Emacs 19: (1-bit)
468
469Infodock (based on XEmacs) has an additional symbol on this list:
470'infodock.")
471
472
473
429(provide 'cc-vars) 474(provide 'cc-vars)
430;;; cc-vars.el ends here 475;;; cc-vars.el ends here