Subject: bug#11749: Acknowledgement (24.1; C-mode indentation gives wrong-type-argument error.)

From: Michael Welsh Duggan <[email-masked]>
Date: Thu, 17 Jan 2013 11:27:04 -0500

Alan Mackenzie <[email-masked]> writes:

> Happy New Year, Michael!
>
> On Sun, Dec 09, 2012 at 10:35:42PM -0500, Michael Welsh Duggan wrote:
>> Here's another case.  
>
>> emacs -Q rwrec.h
>> M-x c-toggle-parse-state-debug
>> C-v {about 24-27 times}
>
>> This is with current bzr.  
>> 111170 [email-masked]
>
>> rwrec.h is attached.
>
> Thanks.  I think the following patch should have sorted out this one.  It
> is based on the cc-engine.el in the emacs-24 branch in savannah.  Could
> you try it out as usual, please.

This fixes this case, indeed.  Unfortunately, here's another.

emacs -Q rwtransfer.c
  M-x c-toggle-parse-state-debug
  M->
Then type M-v until the parse failure happens.  For me it happens at 
32% point in the file.  Please not that this particular problem only
happens when paging through the file in reverse order.

c-parse-state inconsistency at 15885: using cache: (15636 15181 (13849 . 15141)), from scratch: (15636 (15303 . 15493) 15181 (13849 . 15141))
Old state:
(setq c-state-cache '(16334 16271 16248 (16059 . 16193) 15181 (13849 . 15141))  c-state-cache-good-pos 16335  c-state-nonlit-pos-cache '(48473 45473 42473 39473 36473 33473 30473 27378 24378 21260 18015 15015 12015 9015 6015 3015)  c-state-nonlit-pos-cache-limit 48473  c-state-semi-nonlit-pos-cache '(48323 45323 42323 39323 36323 33260 30260 27260 24260 21260 18001 15001 12001 9001 6001 3001)  c-state-semi-nonlit-pos-cache-limit 48323  c-state-brace-pair-desert '(15181 . 17388)  c-state-point-min 1  c-state-point-min-lit-type nil  c-state-point-min-lit-start nil  c-state-min-scan-pos 1  c-state-old-cpp-beg nil  c-state-old-cpp-end nil  c-parse-state-point 16335)
c-parse-state inconsistency at 15885: using cache: (15636 15181 (13849 . 15141)), from scratch: (15636 (15303 . 15493) 15181 (13849 . 15141))

-- 
Michael Welsh Duggan
([email-masked])