diff options
author | Alan Mackenzie <acm@muc.de> | 2016-03-14 21:44:11 +0000 |
---|---|---|
committer | Alan Mackenzie <acm@muc.de> | 2016-03-14 21:48:45 +0000 |
commit | 5cc691930808ccf7afdbc53ed49ca24badd97013 (patch) | |
tree | f986652c247488eb6c2d09d2db388599e206256e /lisp/emacs-lisp/regexp-opt.el | |
parent | 0ce37eac45f8b1279e89e854f71bb3f35fd43d29 (diff) | |
download | emacs-5cc691930808ccf7afdbc53ed49ca24badd97013.tar.gz emacs-5cc691930808ccf7afdbc53ed49ca24badd97013.tar.bz2 emacs-5cc691930808ccf7afdbc53ed49ca24badd97013.zip |
Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
* lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
* lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
rather than just using the cache variable c-state-cache.
(c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
to c-parse-state from other uses of the parse state cache.
* lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
c-self-bind-state-cache around the processing, replacing flawed bindings of
c-state-cache.
Diffstat (limited to 'lisp/emacs-lisp/regexp-opt.el')
0 files changed, 0 insertions, 0 deletions