GNU bug report logs -
#64989
29.1; Comment or uncomment lines in elisp-mode will show message in minibuffer
Previous Next
Reported by: Eason Huang <aqua0210 <at> foxmail.com>
Date: Tue, 1 Aug 2023 11:15:01 UTC
Severity: normal
Merged with 65246
Found in version 29.1
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 64989 in the body.
You can then email your comments to 64989 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#64989
; Package
emacs
.
(Tue, 01 Aug 2023 11:15:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Eason Huang <aqua0210 <at> foxmail.com>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Tue, 01 Aug 2023 11:15:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Hello Emacs,
When update to the new released Emacs 29.1, I found that when comment or
uncomment lines in emacs-lisp-mode will show message in minibuffer as
below:
```
combine-change-calls: buffer-undo-list broken
```
Steps to reproduce:
1. create a test.el file with any Elisp code. such as:
```
(message "Test")
```
2. start emacs and open the test.el file with `emacs -Q ~/test.el`
3. Use C-x C-; (comment-line) to comment the code in test.el
4. Now you will see the message mentioned above.
This issue also happened on Emacs 29.1 on Windows OS.
----
Best regard, Eason Huang
In GNU Emacs 29.1 (build 1, x86_64-apple-darwin22.6.0, NS appkit-2299.70
Version 13.5 (Build 22G74), git sha1 a9b28224af0) of 2023-07-30 built on macbook
Windowing system distributor 'Apple', version 10.3.2299
System Description: macOS 13.5
Configured using:
'configure --with-native-compilation=aot --without-dbus
'CPPFLAGS=-I/opt/local/include
-isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk'
'LDFLAGS=-L/opt/local/lib -Wl,-headerpad_max_install_names -Wl,-rpath
/opt/local/lib/gcc12
-Wl,-syslibroot,/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
-arch x86_64''
Configured features:
ACL GIF GLIB GMP GNUTLS JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP
NOTIFY KQUEUE NS PDUMPER PNG RSVG SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM ZLIB
Important settings:
value of $LC_CTYPE: en_US.UTF-8
value of $LANG: en_US.UTF-8
locale-coding-system: utf-8-unix
Major mode: ELisp/l
Minor modes in effect:
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
line-number-mode: t
transient-mark-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
Load-path shadows:
None found.
Features:
(shadow sort mail-extr emacsbug message mailcap yank-media puny dired
dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg rfc6068
epg-config gnus-util time-date mm-decode mm-bodies mm-encode mail-parse
rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045
ietf-drums mm-util mail-prsvr mail-utils vc-git diff-mode easy-mmode
vc-dispatcher shortdoc text-property-search help-fns radix-tree
cl-loaddefs comp comp-cstr warnings icons subr-x rx cl-seq cl-macs gv
cl-extra help-mode bytecomp byte-compile cl-lib rmc iso-transl tooltip
cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type
elisp-mode mwheel term/ns-win ns-win ucs-normalize mule-util
term/common-win tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode lisp-mode prog-mode register
page tab-bar menu-bar rfn-eshadow isearch easymenu timer select
scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors
frame minibuffer nadvice seq simple cl-generic indonesian philippine
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite emoji-zwj charscript
charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure
cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp
files window text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget keymap hashtable-print-readable backquote
threads kqueue cocoa ns lcms2 multi-tty make-network-process
native-compile emacs)
Memory information:
((conses 16 91885 14315)
(symbols 48 7745 3)
(strings 32 22830 1629)
(string-bytes 1 698877)
(vectors 16 17037)
(vector-slots 8 356967 18443)
(floats 8 85 110)
(intervals 56 538 16)
(buffers 984 14))
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#64989
; Package
emacs
.
(Tue, 01 Aug 2023 13:21:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 64989 <at> debbugs.gnu.org (full text, mbox):
> From: Eason Huang <aqua0210 <at> foxmail.com>
> Date: Tue, 01 Aug 2023 19:13:59 +0800
>
> Hello Emacs,
>
> When update to the new released Emacs 29.1, I found that when comment or
> uncomment lines in emacs-lisp-mode will show message in minibuffer as
> below:
> ```
> combine-change-calls: buffer-undo-list broken
> ```
> Steps to reproduce:
> 1. create a test.el file with any Elisp code. such as:
> ```
> (message "Test")
> ```
> 2. start emacs and open the test.el file with `emacs -Q ~/test.el`
> 3. Use C-x C-; (comment-line) to comment the code in test.el
> 4. Now you will see the message mentioned above.
Thanks.
Stefan, I think this is due to the commit below:
| Author: Stefan Monnier <monnier <at> iro.umontreal.ca>
| AuthorDate: Fri Jan 13 17:38:04 2023 -0500
| Commit: Stefan Monnier <monnier <at> iro.umontreal.ca>
| CommitDate: Fri Jan 13 17:38:04 2023 -0500
|
| * lisp/subr.el (combine-change-calls-1): Fix bug#60467
|
| Don't stop at timestamps. Strip them for now, to be on the safe side.
| Don't merge into `master` where we'll use a better fix.
My "partial bisecting" indicates that the bug was introduced between
Dec 31, 2022 and Jan 31, 2023, and the above is the only commit
in-between that could matter.
If indeed this is the culprit, can we perhaps backport the "better
fix" from master to the emacs-29 branch?
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#64989
; Package
emacs
.
(Sat, 12 Aug 2023 06:44:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 64989 <at> debbugs.gnu.org (full text, mbox):
Ping! Stefan, any suggestions?
> Cc: 64989 <at> debbugs.gnu.org
> Date: Tue, 01 Aug 2023 16:20:20 +0300
> From: Eli Zaretskii <eliz <at> gnu.org>
>
> > From: Eason Huang <aqua0210 <at> foxmail.com>
> > Date: Tue, 01 Aug 2023 19:13:59 +0800
> >
> > Hello Emacs,
> >
> > When update to the new released Emacs 29.1, I found that when comment or
> > uncomment lines in emacs-lisp-mode will show message in minibuffer as
> > below:
> > ```
> > combine-change-calls: buffer-undo-list broken
> > ```
> > Steps to reproduce:
> > 1. create a test.el file with any Elisp code. such as:
> > ```
> > (message "Test")
> > ```
> > 2. start emacs and open the test.el file with `emacs -Q ~/test.el`
> > 3. Use C-x C-; (comment-line) to comment the code in test.el
> > 4. Now you will see the message mentioned above.
>
> Thanks.
>
> Stefan, I think this is due to the commit below:
>
> | Author: Stefan Monnier <monnier <at> iro.umontreal.ca>
> | AuthorDate: Fri Jan 13 17:38:04 2023 -0500
> | Commit: Stefan Monnier <monnier <at> iro.umontreal.ca>
> | CommitDate: Fri Jan 13 17:38:04 2023 -0500
> |
> | * lisp/subr.el (combine-change-calls-1): Fix bug#60467
> |
> | Don't stop at timestamps. Strip them for now, to be on the safe side.
> | Don't merge into `master` where we'll use a better fix.
>
> My "partial bisecting" indicates that the bug was introduced between
> Dec 31, 2022 and Jan 31, 2023, and the above is the only commit
> in-between that could matter.
>
> If indeed this is the culprit, can we perhaps backport the "better
> fix" from master to the emacs-29 branch?
Merged 64989 65246.
Request was from
Eli Zaretskii <eliz <at> gnu.org>
to
control <at> debbugs.gnu.org
.
(Sat, 12 Aug 2023 13:40:02 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#64989
; Package
emacs
.
(Wed, 16 Aug 2023 16:13:01 GMT)
Full text and
rfc822 format available.
Message #16 received at 64989 <at> debbugs.gnu.org (full text, mbox):
As mentioned in bug#60467, this is the same bug. I suggest backporting
d622602452 to emacs-29 once you are confident enough that it does not
break anything (if it does indeed not break anything!).
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#64989
; Package
emacs
.
(Thu, 24 Aug 2023 06:20:02 GMT)
Full text and
rfc822 format available.
Message #19 received at 64989 <at> debbugs.gnu.org (full text, mbox):
Ping! Ping!
> Cc: aqua0210 <at> foxmail.com, 64989 <at> debbugs.gnu.org
> Date: Sat, 12 Aug 2023 09:43:54 +0300
> From: Eli Zaretskii <eliz <at> gnu.org>
>
> Ping! Stefan, any suggestions?
>
> > Cc: 64989 <at> debbugs.gnu.org
> > Date: Tue, 01 Aug 2023 16:20:20 +0300
> > From: Eli Zaretskii <eliz <at> gnu.org>
> >
> > > From: Eason Huang <aqua0210 <at> foxmail.com>
> > > Date: Tue, 01 Aug 2023 19:13:59 +0800
> > >
> > > Hello Emacs,
> > >
> > > When update to the new released Emacs 29.1, I found that when comment or
> > > uncomment lines in emacs-lisp-mode will show message in minibuffer as
> > > below:
> > > ```
> > > combine-change-calls: buffer-undo-list broken
> > > ```
> > > Steps to reproduce:
> > > 1. create a test.el file with any Elisp code. such as:
> > > ```
> > > (message "Test")
> > > ```
> > > 2. start emacs and open the test.el file with `emacs -Q ~/test.el`
> > > 3. Use C-x C-; (comment-line) to comment the code in test.el
> > > 4. Now you will see the message mentioned above.
> >
> > Thanks.
> >
> > Stefan, I think this is due to the commit below:
> >
> > | Author: Stefan Monnier <monnier <at> iro.umontreal.ca>
> > | AuthorDate: Fri Jan 13 17:38:04 2023 -0500
> > | Commit: Stefan Monnier <monnier <at> iro.umontreal.ca>
> > | CommitDate: Fri Jan 13 17:38:04 2023 -0500
> > |
> > | * lisp/subr.el (combine-change-calls-1): Fix bug#60467
> > |
> > | Don't stop at timestamps. Strip them for now, to be on the safe side.
> > | Don't merge into `master` where we'll use a better fix.
> >
> > My "partial bisecting" indicates that the bug was introduced between
> > Dec 31, 2022 and Jan 31, 2023, and the above is the only commit
> > in-between that could matter.
> >
> > If indeed this is the culprit, can we perhaps backport the "better
> > fix" from master to the emacs-29 branch?
>
>
>
>
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#64989
; Package
emacs
.
(Sat, 26 Aug 2023 15:10:02 GMT)
Full text and
rfc822 format available.
Message #22 received at 64989 <at> debbugs.gnu.org (full text, mbox):
>> When update to the new released Emacs 29.1, I found that when comment or
>> uncomment lines in emacs-lisp-mode will show message in minibuffer as
>> below:
>> ```
>> combine-change-calls: buffer-undo-list broken
>> ```
>> Steps to reproduce:
>> 1. create a test.el file with any Elisp code. such as:
>> ```
>> (message "Test")
>> ```
>> 2. start emacs and open the test.el file with `emacs -Q ~/test.el`
>> 3. Use C-x C-; (comment-line) to comment the code in test.el
>> 4. Now you will see the message mentioned above.
>
> Thanks.
>
> Stefan, I think this is due to the commit below:
Yup. The message is just wrong in this case: (cdr ptr) is nil simply
because `buffer-undo-list` was nil initially, not because the
`buffer-undo-list` has been shortened by the GC.
> If indeed this is the culprit, can we perhaps backport the "better
> fix" from master to the emacs-29 branch?
That would work as well. The patch below should do the trick, tho, if
you prefer to keep changes to a minimum.
Stefan
diff --git a/lisp/subr.el b/lisp/subr.el
index 28473f1d38c..ec30637b526 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -5002,7 +5002,7 @@ combine-change-calls-1
;; Don't include a timestamp entry.
(setcdr ptr (cddr ptr))
(setq ptr (cdr ptr))))
- (unless (cdr ptr)
+ (unless (or (cdr ptr) (null old-bul))
(message "combine-change-calls: buffer-undo-list broken"))
(setcdr ptr nil)
(push ap-elt buffer-undo-list)
Reply sent
to
Stefan Monnier <monnier <at> iro.umontreal.ca>
:
You have taken responsibility.
(Mon, 28 Aug 2023 16:14:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Eason Huang <aqua0210 <at> foxmail.com>
:
bug acknowledged by developer.
(Mon, 28 Aug 2023 16:14:02 GMT)
Full text and
rfc822 format available.
Message #27 received at 64989-done <at> debbugs.gnu.org (full text, mbox):
> That would work as well. The patch below should do the trick, tho, if
> you prefer to keep changes to a minimum.
Pushed to `emacs-29`.
Stefan
Reply sent
to
Stefan Monnier <monnier <at> iro.umontreal.ca>
:
You have taken responsibility.
(Mon, 28 Aug 2023 16:14:03 GMT)
Full text and
rfc822 format available.
Notification sent
to
Rittwik Chatterjee <rittwik <at> gmail.com>
:
bug acknowledged by developer.
(Mon, 28 Aug 2023 16:14:03 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#64989
; Package
emacs
.
(Mon, 28 Aug 2023 16:37:02 GMT)
Full text and
rfc822 format available.
Message #35 received at 64989-done <at> debbugs.gnu.org (full text, mbox):
> From: Stefan Monnier <monnier <at> iro.umontreal.ca>
> Cc: Eason Huang <aqua0210 <at> foxmail.com>, 64989-done <at> debbugs.gnu.org
> Date: Mon, 28 Aug 2023 12:13:24 -0400
>
> > That would work as well. The patch below should do the trick, tho, if
> > you prefer to keep changes to a minimum.
>
> Pushed to `emacs-29`.
Thanks!
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Tue, 26 Sep 2023 11:24:07 GMT)
Full text and
rfc822 format available.
This bug report was last modified 1 year and 228 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.