Subject: bug#16526: 24.3.50; scroll-conservatively & c-mode regression

From: Alan Mackenzie <[email-masked]>
Date: Fri, 31 Jan 2014 20:00:01 +0000

Hi, Eli.

On Thu, Jan 30, 2014 at 07:16:27PM +0200, Eli Zaretskii wrote:
> > Date: Wed, 29 Jan 2014 21:52:40 +0000
> > Cc: [email-masked]
> > From: Alan Mackenzie <[email-masked]>

> > OK, here is a rough patch (smooth version to follow if it's any good),
> > which attempts to solve the problem by not calling
> > c-append-lower-brace-pair-to-state-cache in the pertinent circumstances.
> > Please try it out and let me know if it solves the problem

> It takes about 3 sec here, so I think it does solve the problem.

> > (I still can't reproduce the massive slowdown myself).

> Did you try to configure like I've shown and rebuild?

Sorry, no I hadn't.  I wasn't paying enough attention when I read that
post of yours.

I've just tried it now, and with the unoptimised and instrumented
version just created, using the unpatched cc-engine.elc, Martin's recipe
takes me ~70 seconds.  With my patch, it takes ~13 seconds.

I think you commented somewhere that it would be a good idea to test on
such a build "any change which might affect redisplay".  That might be
so, but how should one know which changes might do this?  Binding
open-paren-in-column-0-etc. to nil wouldn't have raised any alarm bells
in this regard, since beginning-of-defun doesn't seem much connected
with redisplay.

-- 
Alan Mackenzie (Nuremberg, Germany).