;;;###autoload (add-to-list 'auto-mode-alist '("\\.y\\(acc\\)?\\'" . c-mode))
;;;###autoload (add-to-list 'auto-mode-alist '("\\.lex\\'" . c-mode))
-(defvar cc-define-alist nil "Alist of #define directives for GUD tooltips.")
-
-(defun cc-create-define-alist ()
- (let* ((file (buffer-file-name))
- (output
- (with-output-to-string
- (with-current-buffer standard-output
- (call-process shell-file-name
- (if (file-exists-p file) file nil)
- (list t nil) nil "-c" cc-define-list-program))))
- (define-list (split-string output "\n" t))
- (name))
- (setq cc-define-alist nil)
- (dolist (define define-list)
- (setq name (nth 1 (split-string define "[( ]")))
- (push (cons name define) cc-define-alist))))
-
;;;###autoload
(defun c-mode ()
"Major mode for editing K&R and ANSI C code.
mode-name "C"
local-abbrev-table c-mode-abbrev-table
abbrev-mode t)
- (make-local-variable 'cc-define-alist)
(use-local-map c-mode-map)
(c-init-language-vars-for 'c-mode)
(c-common-init 'c-mode)
(easy-menu-add c-c-menu)
(cc-imenu-init cc-imenu-c-generic-expression)
- (if (buffer-file-name) (cc-create-define-alist))
- (add-hook 'after-save-hook 'cc-create-define-alist nil t)
(run-mode-hooks 'c-mode-common-hook 'c-mode-hook)
(c-update-modeline))