Subject: bug#5851: 24.0.50; first character after opening quote often gets eaten in CC modes

From: Stefan Kangas <[email-masked]>
Date: Sun, 6 Oct 2019 13:36:52 +0200

[email-masked] writes:

> Paul Pogonyshev <[email-masked]> writes:
>
>> FWIW the bug is still present.  I get this backtrace (2011-02-19
>> build):
>>
>>     (error "Invalid search bound (wrong side of point)")
>>       signal(error ("Invalid search bound (wrong side of point)"))
>>       byte-code(" b\210\302    @    A\"\207" [start err signal] 3)
>>       c-syntactic-re-search-forward("[;{}]" 8510 end)
>>       c-before-change-check-<>-operators(6462 6462)
>>       #[(fn) "     \n\"\207" [fn beg end] 3](c-before-change-check-<>-operators)
>>       mapc(#[(fn) "     \n\"\207" [fn beg end] 3] (c-extend-region-for-CPP c-before-change-check-<>-operators))
>>       c-before-change(6462 6462)
>>       self-insert-command(1)
>>       call-interactively(self-insert-command nil nil)
>>
>> I cannot find a reliable way to reproduce, but it happens often
>> enough.  Apparently, buffers not touched in quite a while are more
>> prone.  I.e. open a C++ file and leave it alone for 5 minutes.  Then
>> switch to the buffer and type outside any string a double quote
>> following by any other character --- the second character will likely
>> get eaten with an error as above.  M-x toggle-debug-on-error helps
>> spotting it.
>
> Maybe this is fixed in master now, along with Bug#28850?  (the error
> there is the same, though the backtrace is a bit different)

Indeed, it looks like this has been fixed on master -- or at least I
can't reproduce it.  Alan, what do you think?

Best regards,
Stefan Kangas