Fix bugs in the c-parse-state mechanism. Reuse some markers instead of
authorAlan Mackenzie <acm@muc.de>
Wed, 9 Jan 2013 21:33:00 +0000 (21:33 +0000)
committerAlan Mackenzie <acm@muc.de>
Wed, 9 Jan 2013 21:33:00 +0000 (21:33 +0000)
commita02efd20ff3ed5eb146f5581828923b7baeef9da
tree044e7e1eacb17d0a57a2ff0fa06a5ea6a6c5ed1d
parent27b04dbae44cbe444e7a59e66795c9bcaf3dee93
Fix bugs in the c-parse-state mechanism.  Reuse some markers instead of
continually generating new ones.

cc-engine.el (c-state-old-cpp-beg-marker, c-state-old-cpp-end-marker):
New variables.
(c-append-lower-brace-pair-to-state-cache): Start a backward search for
"}" definitively outside CPP constructs.
(c-remove-stale-state-cache): Inform the caller of a need to search back
for a brace pair in certain circumstances.
(c-state-maybe-marker): New macro.
(c-parse-state): Reuse markers when appropriate.
lisp/ChangeLog
lisp/progmodes/cc-engine.el