I have bisected this regression to 7fff418edf56244a1fcf54718523aa9b5cb3a854 I will cc Stefan on the miniscule chance he still remembers anything about this and can save me time. Otherwise, I will see if I can pinpoint the regression (or if I messed up the bisect). Author: Stefan Monnier Date: Fri Nov 29 11:51:48 2019 -0500 * lisp/textmodes/mhtml-mode.el: Fix bug#38372 The `sgml-syntax-propertize-rules` rely on the `sgml--syntax-propertize-ppss` setup by `sgml-syntax-propertize` so it is not correct/safe to use them directly like html used to do. Change `sgml-syntax-propertize` so it can be used by mhtml, and then adjust mhtml-mode accordingly. * lisp/textmodes/mhtml-mode.el: Remove redundant `eval-and-compile`. Only require cl-lib at compile-time. (mhtml--syntax-propertize): New const, extracted from mhtml-syntax-propertize. (mhtml-syntax-propertize): Use `sgml-syntax-propertize`. * lisp/textmodes/sgml-mode.el (sgml--syntax-propertize): New const, extracted from sgml-syntax-propertize. (sgml-syntax-propertize): Add optional `rules-function` arg. lisp/textmodes/mhtml-mode.el | 44 ++++++++++++++++++++------------------------ lisp/textmodes/sgml-mode.el | 13 ++++++++----- 2 files changed, 28 insertions(+), 29 deletions(-) On Sun, Aug 1, 2021 at 10:41 AM Lars Ingebrigtsen wrote: > Allen Li writes: > > > Thus, I resorted to actually trying to understand the code. > > Darn, I hate it when that happens. > > > I've tracked down the bug to unexpected behavior from the `scan-sexps` > > call in this part of `electric-pair--balance-info`: > > I can reproduce exactly what you're seeing -- when edebugging, the > problem goes away, etc. > > I put a > > (redisplay t) > > into the function, and that also made the problem go away, but that's as > far as I've gotten so far. So the problem does indeed seem to be > something related to a cache/table somewhere not having been updated... > > -- > (domestic pets only, the antidote for overdose, milk.) > bloggy blog: http://lars.ingebrigtsen.no >