summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorAlan Mackenzie <acm@muc.de>2020-05-15 19:24:29 +0000
committerAlan Mackenzie <acm@muc.de>2020-05-15 19:24:29 +0000
commit66cbe8b946bf83ab19c0d9a7b9fc03e951ffd5b6 (patch)
treec829c22997d507dec9142eadad25967a8362db3f /lisp/emacs-lisp
parentafca37343d0637386e4dfc4fb04d8700f3c6bf0d (diff)
downloademacs-66cbe8b946bf83ab19c0d9a7b9fc03e951ffd5b6.tar.gz
emacs-66cbe8b946bf83ab19c0d9a7b9fc03e951ffd5b6.tar.bz2
emacs-66cbe8b946bf83ab19c0d9a7b9fc03e951ffd5b6.zip
CC Mode: Fix bug #40052, where a very large macro was too slow in scrolling
* lisp/progmodes/cc-engine.el (c-end-of-macro): Fix faulty cache handling, where the upper bound of c-macro-cache was never being set. (c-forward-comment-minus-1): New macro which terminates unwanted indefinite backward searching with lots of escaped newlines in c-backward-single-comment. (c-backward-single-comment, c-backward-comments): Use the new macro above. * lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings) (c-after-change-mark-abnormal-strings, c-after-change-escape-NL-in-string): Optimize three regexps by using shy groups, thus preventing regexp stack overflow while handling the large C Macro.
Diffstat (limited to 'lisp/emacs-lisp')
0 files changed, 0 insertions, 0 deletions