diff options
| author | Alan Mackenzie | 2013-08-25 13:52:14 +0000 |
|---|---|---|
| committer | Alan Mackenzie | 2013-08-25 13:52:14 +0000 |
| commit | 869455d4321f936935fd74753d0fa2c17ec7870e (patch) | |
| tree | d2e576dbf18fe7d5b0f163c9b75643ca21bcf37d | |
| parent | b5eb9035266f58e99695fd424cba84f994db9a0e (diff) | |
| download | emacs-869455d4321f936935fd74753d0fa2c17ec7870e.tar.gz emacs-869455d4321f936935fd74753d0fa2c17ec7870e.zip | |
Parse C++ inher-intro when there's a template split over 2 lines.
* progmodes/cc-engine.el (c-guess-basic-syntax CASE 5C): Code more
rigorously the search for "class" etc. followed by ":".
* progmodes/cc-langs.el (c-opt-<>-sexp-key): Make the value for
random languages a regexp which never matches rather than nil.
| -rw-r--r-- | lisp/ChangeLog | 8 | ||||
| -rw-r--r-- | lisp/progmodes/cc-engine.el | 12 | ||||
| -rw-r--r-- | lisp/progmodes/cc-langs.el | 3 |
3 files changed, 15 insertions, 8 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 4d4227a2a0f..cbeea784579 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,5 +1,13 @@ | |||
| 1 | 2013-08-25 Alan Mackenzie <acm@muc.de> | 1 | 2013-08-25 Alan Mackenzie <acm@muc.de> |
| 2 | 2 | ||
| 3 | Parse C++ inher-intro when there's a template split over 2 lines. | ||
| 4 | |||
| 5 | * progmodes/cc-engine.el (c-guess-basic-syntax CASE 5C): Code more | ||
| 6 | rigorously the search for "class" etc. followed by ":". | ||
| 7 | |||
| 8 | * progmodes/cc-langs.el (c-opt-<>-sexp-key): Make the value for | ||
| 9 | random languages a regexp which never matches rather than nil. | ||
| 10 | |||
| 3 | Handle "/"s more accurately in test for virtual semicolons (AWK Mode). | 11 | Handle "/"s more accurately in test for virtual semicolons (AWK Mode). |
| 4 | 12 | ||
| 5 | * progmodes/cc-awk.el (c-awk-one-line-possibly-open-string-re) | 13 | * progmodes/cc-awk.el (c-awk-one-line-possibly-open-string-re) |
diff --git a/lisp/progmodes/cc-engine.el b/lisp/progmodes/cc-engine.el index 2b9b6548e6f..3d6398014db 100644 --- a/lisp/progmodes/cc-engine.el +++ b/lisp/progmodes/cc-engine.el | |||
| @@ -9799,12 +9799,12 @@ comment at the start of cc-engine.el for more info." | |||
| 9799 | (not (eq (char-after) ?:)) | 9799 | (not (eq (char-after) ?:)) |
| 9800 | ))) | 9800 | ))) |
| 9801 | (save-excursion | 9801 | (save-excursion |
| 9802 | (c-backward-syntactic-ws lim) | 9802 | (c-beginning-of-statement-1 lim) |
| 9803 | (if (eq char-before-ip ?:) | 9803 | (when (looking-at c-opt-<>-sexp-key) |
| 9804 | (progn | 9804 | (goto-char (match-end 1)) |
| 9805 | (forward-char -1) | 9805 | (c-forward-syntactic-ws) |
| 9806 | (c-backward-syntactic-ws lim))) | 9806 | (c-forward-<>-arglist nil) |
| 9807 | (back-to-indentation) | 9807 | (c-forward-syntactic-ws)) |
| 9808 | (looking-at c-class-key))) | 9808 | (looking-at c-class-key))) |
| 9809 | ;; for Java | 9809 | ;; for Java |
| 9810 | (and (c-major-mode-is 'java-mode) | 9810 | (and (c-major-mode-is 'java-mode) |
diff --git a/lisp/progmodes/cc-langs.el b/lisp/progmodes/cc-langs.el index 2c0a1317b04..0116e9ec3dd 100644 --- a/lisp/progmodes/cc-langs.el +++ b/lisp/progmodes/cc-langs.el | |||
| @@ -2163,8 +2163,7 @@ assumed to be set if this isn't nil." | |||
| 2163 | (c-lang-defconst c-opt-<>-sexp-key | 2163 | (c-lang-defconst c-opt-<>-sexp-key |
| 2164 | ;; Adorned regexp matching keywords that can be followed by an angle | 2164 | ;; Adorned regexp matching keywords that can be followed by an angle |
| 2165 | ;; bracket sexp. Always set when `c-recognize-<>-arglists' is. | 2165 | ;; bracket sexp. Always set when `c-recognize-<>-arglists' is. |
| 2166 | t (if (c-lang-const c-recognize-<>-arglists) | 2166 | t (c-make-keywords-re t (c-lang-const c-<>-sexp-kwds))) |
| 2167 | (c-make-keywords-re t (c-lang-const c-<>-sexp-kwds)))) | ||
| 2168 | (c-lang-defvar c-opt-<>-sexp-key (c-lang-const c-opt-<>-sexp-key)) | 2167 | (c-lang-defvar c-opt-<>-sexp-key (c-lang-const c-opt-<>-sexp-key)) |
| 2169 | 2168 | ||
| 2170 | (c-lang-defconst c-brace-id-list-kwds | 2169 | (c-lang-defconst c-brace-id-list-kwds |