Hello again, Marti.
In article <mailman.13159.1502810889.21957.bug-gnu-emacs@gnu.org > you wrote:
> [-- text/plain, encoding 7bit, charset: UTF-8, 98 lines --]
> 1. From emacs -Q, open this file:
> https://github.com/zephyrproject-rtos/zephyr/ blob/ 2de59023dc726e61244eb7cca17252 294016c65a/subsys/net/lib/ http/http_client.c
> 2. Observe incorrect syntax highlighting at beginning of file. Screenshot:
> https://postimg.org/image/tzy8qgjjz/
> (Note that loading a C file with just the #ifdefs and initial
> comment which fail to highlight above doesn't reproduce the issue.)
I think the following patch should fix the bug. Would you please apply
it, try it out, and either confirm to me that it fixes the bug, or tell
me what's still wrong:
diff -r 9533dc4cbda3 cc-mode.el
--- a/cc-mode.el Thu Jul 27 17:37:02 2017 +0000
+++ b/cc-mode.el Wed Aug 16 20:48:54 2017 +0000
@@ -1529,10 +1529,13 @@
(c-backward-syntactic-ws)
(when (setq pos1 (c-on-identifier))
(goto-char pos1)
- (when (and (c-forward-declarator)
- (eq (c-forward-token-2) 0))
- (c-backward-syntactic-ws)
- (point)))))
+ (let ((lim (save-excursion
+ (and (c-beginning-of-macro)
+ (progn (c-end-of-macro) (point))))))
+ (when (and (c-forward-declarator lim)
+ (eq (c-forward-token-2 1 nil lim) 0))
+ (c-backward-syntactic-ws)
+ (point))))))
(defun c-change-expand-fl-region (beg end old-len)
;; Expand the region (c-new-BEG c-new-END) to an after-change font-lock
Thanks for taking the trouble to report this bug.
> In GNU Emacs 26.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.11)
> of 2017-08-10 built on plop
> Repository revision: 81656add8117e8d1b7faab18b330d0706462b433
> Windowing system distributor 'The X.Org Foundation', version 11.0.11903000
> System Description: Ubuntu 17.04
--
Alan Mackenzie (Nuremberg, Germany).