diff options
| author | Alan Mackenzie | 2014-11-05 17:57:50 +0000 |
|---|---|---|
| committer | Alan Mackenzie | 2014-11-05 17:57:50 +0000 |
| commit | ceb7a7dfb8a2c2b17ac876e693d462ec65dcd97a (patch) | |
| tree | 53ee22be83c7414e44ce046e9872d51be408cfc3 | |
| parent | bd02f3d40e764945066e90921481bfccfb4407fa (diff) | |
| download | emacs-ceb7a7dfb8a2c2b17ac876e693d462ec65dcd97a.tar.gz emacs-ceb7a7dfb8a2c2b17ac876e693d462ec65dcd97a.zip | |
Fix wrong bound to c-font-lock-declarators. Fixes bug #18948.
progmodes/cc-fonts.el (c-font-lock-declarations): Pass "(point-max)" as
bound to c-font-lock-declarators, not "limit", as the buffer is sometimes
narrowed to less than "limit" (e.g., in the presence of macros).
| -rw-r--r-- | lisp/ChangeLog | 8 | ||||
| -rw-r--r-- | lisp/progmodes/cc-fonts.el | 4 |
2 files changed, 11 insertions, 1 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 4a3b1dcd96a..111f98b8d4e 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,11 @@ | |||
| 1 | 2014-11-05 Alan Mackenzie <acm@muc.de> | ||
| 2 | |||
| 3 | Fix wrong bound to c-font-lock-declarators. Fixes bug #18948. | ||
| 4 | * progmodes/cc-fonts.el (c-font-lock-declarations): Pass | ||
| 5 | "(point-max)" as bound to c-font-lock-declarators, not "limit", as | ||
| 6 | the buffer is sometimes narrowed to less than "limit" (e.g., in | ||
| 7 | the presence of macros). | ||
| 8 | |||
| 1 | 2014-11-05 Michael Albinus <michael.albinus@gmx.de> | 9 | 2014-11-05 Michael Albinus <michael.albinus@gmx.de> |
| 2 | 10 | ||
| 3 | * net/tramp.el (tramp-error-with-buffer): Show connection buffer | 11 | * net/tramp.el (tramp-error-with-buffer): Show connection buffer |
diff --git a/lisp/progmodes/cc-fonts.el b/lisp/progmodes/cc-fonts.el index bf5630da045..6ebd6c6a8fc 100644 --- a/lisp/progmodes/cc-fonts.el +++ b/lisp/progmodes/cc-fonts.el | |||
| @@ -1279,6 +1279,8 @@ casts and declarations are fontified. Used on level 2 and higher." | |||
| 1279 | c-font-lock-maybe-decl-faces | 1279 | c-font-lock-maybe-decl-faces |
| 1280 | 1280 | ||
| 1281 | (lambda (match-pos inside-macro) | 1281 | (lambda (match-pos inside-macro) |
| 1282 | ;; Note to maintainers: don't use `limit' inside this lambda form; | ||
| 1283 | ;; c-find-decl-spots sometimes narrows to less than `limit'. | ||
| 1282 | (setq start-pos (point)) | 1284 | (setq start-pos (point)) |
| 1283 | (when | 1285 | (when |
| 1284 | ;; The result of the form below is true when we don't recognize a | 1286 | ;; The result of the form below is true when we don't recognize a |
| @@ -1507,7 +1509,7 @@ casts and declarations are fontified. Used on level 2 and higher." | |||
| 1507 | ;; At a real declaration? | 1509 | ;; At a real declaration? |
| 1508 | (if (memq (c-forward-type t) '(t known found)) | 1510 | (if (memq (c-forward-type t) '(t known found)) |
| 1509 | (progn | 1511 | (progn |
| 1510 | (c-font-lock-declarators limit t is-typedef) | 1512 | (c-font-lock-declarators (point-max) t is-typedef) |
| 1511 | nil) | 1513 | nil) |
| 1512 | ;; False alarm. Return t to go on to the next check. | 1514 | ;; False alarm. Return t to go on to the next check. |
| 1513 | (goto-char start-pos) | 1515 | (goto-char start-pos) |