diff options
author | Alan Mackenzie <acm@muc.de> | 2011-10-27 20:34:23 +0000 |
---|---|---|
committer | Alan Mackenzie <acm@muc.de> | 2011-10-27 20:34:23 +0000 |
commit | 536610a433e6edc0b3f831272c4e0424ebebee46 (patch) | |
tree | fcb6f43d840d6fd67d20b64ba4e510ddee34ae45 /lisp/emacs-lisp | |
parent | 86c606818495d9411fd5d6b1477f9a097eb18020 (diff) | |
download | emacs-536610a433e6edc0b3f831272c4e0424ebebee46.tar.gz emacs-536610a433e6edc0b3f831272c4e0424ebebee46.tar.bz2 emacs-536610a433e6edc0b3f831272c4e0424ebebee46.zip |
Amend to indent and fontify macros "which include their own semicolon"
correctly, using the "virtual semicolon" mechanism.
cc-defs.el: Update "virtual semicolon" comments.
cc-engine.el (c-crosses-statement-barrier-p): Recoded to scan one line at
at time rather than having \n and \r explicitly in c-stmt-delim-chars
(for some modes, e.g. AWK).
(c-forward-label): Amend for virtual semicolons.
(c-at-macro-vsemi-p, c-macro-vsemi-status-unknown-p): New functions
cc-fonts.el (c-font-lock-declarations): Take account of the new C macros.
cc-langs.el (c-at-vsemi-p-fn, c-vsemi-status-unknown-p-fn): move to
earlier in the file.
(c-opt-cpp-symbol, c-line-comment-start-regexp): New language variables.
(c-opt-cpp-macro-define): Make into a full language variable.
(c-stmt-delim-chars, c-stmt-delim-chars-with-comma): Special value for
AWK Mode (including \n, \r) removed, no longer needed.
cc-mode.el (c-mode, c++-mode, objc-mode): Invoke
c-make-macro-with-semi-re.
cc-vars.el (c-macro-with-semi-re, c-macro-names-with-semicolon): New
variables.
(c-make-macro-with-semi-re): New function
cc-mode.texi (Indentation Commands): Mention "macros with semicolons".
(Other Special Indentations): Add an xref to "Macros with ;".
(Customizing Macros): Add stuff about syntax in macros. Add an xref to
"Macros with ;".
(Macros with ;): New page.
Diffstat (limited to 'lisp/emacs-lisp')
0 files changed, 0 insertions, 0 deletions