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.
Showing with 46 additions and 10 deletions