Subject: Re: bug#30823: 25.3; modification-hooks of overlays are not run in some cases

From: Ren Victor <[email-masked]>
Date: Thu, 15 Mar 2018 15:29:52 +0800

On Thu, Mar 15, 2018 at 2:00 PM, Eli Zaretskii <[email-masked]> wrote:
>> From: Ren Victor <[email-masked]>
>> Date: Thu, 15 Mar 2018 12:15:57 +0800
>>
>> Two factors：
>>
>>    1.  A commit of Emacs， modification-hooks might not be run in some cases:
>>     http://git.savannah.gnu.org/cgit/emacs.git/commit/src?id=564d811725596f15ecf543777e11504b47d2af86
>>
>>    2.  In ggtags, an overlay is deleted in the overlay's modification-hooks:
>>     https://github.com/leoliu/ggtags/blob/eec392d2d639030c5a51bce8431f2815ad8e7bc5/ggtags.el#L2306
>>
>> Deleted overlay ceases to be attached to the buffer. If the buffer of
>> the first overlay in the saved array doesn't match the current buffer,
>> then all the modification hooks will not be run in this buffer.
>>
>> Thus modes that depends on modification-hooks won't work together with
>> ggtags-highlight-tag mode.
>>
>> I think Emacs should support `delete-overlay' in modificaiton-hooks of
>> overlays, like ggtags.  So I report this bug.
>
> Thanks.  Can you provide a recipe starting from "emacs -Q" to
> reproduce the problem?

I wrote a ert case which is encolsed.

emacs -Q -batch -l ert -l bug30823.el -f ert-run-tests-batch-and-exit