GNU bug report logs - #42805
27.1; cc-mode/syntax/font-lock bug

Previous Next

Package: emacs;

Reported by: Gustavo Tavares Cabral <gustavotcabral <at> gmail.com>

Date: Mon, 10 Aug 2020 19:56:02 UTC

Severity: normal

Found in version 27.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: Alan Mackenzie <acm <at> muc.de>
Cc: 42805 <at> debbugs.gnu.org, Gustavo Tavares Cabral <gustavotcabral <at> gmail.com>
Subject: bug#42805: 27.1; cc-mode/syntax/font-lock bug
Date: Mon, 23 Nov 2020 19:10:11 +0200
> From: Gustavo Tavares Cabral <gustavotcabral <at> gmail.com>
> Date: Mon, 10 Aug 2020 16:55:40 -0300
> Cc: bug-cc-mode <at> gnu.org
> 
> I have found two related issues. Both are evident in csharp-mode, but 
> can easily be reproduced in c-mode. 
> 
> Issue 1 (cc-mode.el): 
> 
>   When c-multiline-string-start-char is set, font locking breaks after 
>   changes in string literals. The issue started after commit 2ca12bb3de:
>   I believe that '(c-remove-string-fences (car end-limits))' should be 
>   '(c-remove-string-fences (1- (cdr end-limits)))' 
> 
>   Steps to reproduce: 
>     1. Open a .c file; 
>     2. Eval '(setq c-multiline-string-start-char ?@)'; 
>     3. Delete/insert double quotes. 
> 
>   I think this issue is related:
>   https://github.com/Fuco1/smartparens/issues/992 
> 
> Issue 2 (maybe syntax.el): 
> 
>   When syntax-propertize-function is set (to '(lambda (beg end) nil)', 
>   for example), a similar problem occurs if electric-pair-mode (or even 
>   smartparens) is enabled. The symptoms started after commit 585fb95739,
>   but I don't know if it is related.
> 
>   Steps to reproduce: 
>     1. Open a .c file; 
>     2. Eval '(setq syntax-propertize-function (lambda (beg end) nil)'; 
>     3. Enable electric-pair-mode; 
>     4. Insert/delete empty strings.

Alan, could you please take a look?  Would it be possible to fix this
for Emacs 27.2?




This bug report was last modified 3 years and 272 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.