--- a/lisp/progmodes/cc-mode.el.orig 2020-07-29 23:40:41.000000000 +0200 +++ b/lisp/progmodes/cc-mode.el 2020-09-18 15:36:37.409779350 +0200 @@ -2007,6 +2007,10 @@ ;; larger than (beg end). (setq c-new-END (- (+ c-new-END (- end beg)) old-len)) + ;; Trying to fix bug#40317 + (if (> c-new-END (point-max)) + (error "c-new-END is too big! %d > %d" c-new-END (point-max))) + (unless (c-called-from-text-property-change-p) (setq c-just-done-before-change nil) (c-save-buffer-state (case-fold-search)