Subject: bug#58558: 29.0.50; re-search-forward is slow in some buffers

From: Stefan Monnier <[email-masked]>
Date: Wed, 12 Apr 2023 10:38:50 -0400

>> > 1. emacs -Q
>> > 2. M-: (require 'cc-langs) <RET>
>> > 3. C-x b asd <RET>
>> > 4. M-: parse-sexp-lookup-properties <RET> => t
>> >
>> > On Emacs 28, (4) yields nil.
>> 
>> I suspect that the patch below might fix the immediate problem.
>> Of course, setting `parse-sexp-lookup-properties` should not have such
>> a major performance impact, so maybe we should keep digging into
>> the problem.
>
> Also, that code was there in Emacs 28 as well, so how come it suddenly
> has this effect now?

The effect of the code depends on whether the buffer that's current when
`cc-defs.el` is loaded has set `parse-sexp-lookup-properties`
buffer-locally or not.

I don't have Emacs-28 at hand, but the value of
`parse-sexp-lookup-properties` in *scratch* is (buffer-local) t in
Emacs-29 and (global) nil in Emacs-27.

        Stefan