Subject: bug#25362: 26.0.50; comment-region goes into an infinite loop

From: Alan Mackenzie <[email-masked]>
Date: Sat, 7 Jan 2017 10:27:10 +0000

Hello, Eli.

On Sat, Jan 07, 2017 at 11:44:34AM +0200, Eli Zaretskii wrote:
> > Date: Sat, 7 Jan 2017 08:20:23 +0000
> > Cc: [email-masked], [email-masked]
> > From: Alan Mackenzie <[email-masked]>

> > There are actually two distinct bugs at work, here.  One of them is
> > simple, the fix being merely giving a limit to an invocation of
> > c-forward-syntactic-ws.

> Does doing that prevent the infloop?

It prevents one infloop, but not the other one, which happens after the
first one is fixed.  

> > The other bug is more involved.  It involves the invalidation of the
> > whitespace cache, which is currently done incorrectly when "//" is
> > inserted into a line which already has comment markers later on that
> > line.  It should be simple to fix, but is actually quite tricky, with a
> > likelihood of unwanted side effects if it's not done very carefully.  I
> > might be able to fix it today, but I'm not certain of that.

> > I've done a bisection on the repository, and the commit that
> > "introduced" the bug didn't really introduce it at all - it merely
> > uncovered it.  That commit was 4b9ac23960d2998f899287ffcf696ad33b63a69a
> > from 2016-07-03, "Speed up CC Mode fontification with less accurate
> > functions extending region".

> If no better solution emerges, would it make sense to revert 4b9ac23
> on the release branch, as a temporary workaround that prevents the
> infloop?

Apologies, that commit is only in master, not the emacs-25 branch.  I'll
need to do some more careful bisection.

I'll get back to you later.

> Thanks.

-- 
Alan Mackenzie (Nuremberg, Germany).