[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#64450: 30.0.50; char-table-subtype aborts emacs
From: |
Eli Zaretskii |
Subject: |
bug#64450: 30.0.50; char-table-subtype aborts emacs |
Date: |
Sat, 08 Jul 2023 11:16:30 +0300 |
> From: Arthur Miller <arthur.miller@live.com>
> Date: Tue, 04 Jul 2023 00:47:56 +0200
>
>
>
> > (insert (pp Info-mode-map))
> >
> > (keymap
> > #^[nil nil keymap
> > #^^[3 0 nil nil nil nil nil nil nil nil nil Info-next-reference nil nil
> > nil Info-follow-nearest-node nil nil nil nil nil nil nil nil nil nil nil
> > nil nil
> >
> > I have removed rest of printed code for the brewity for the mail, but if you
> > eval above and place the cursor somewhere after the "keymap", or before the
> > char
> > table, and then try to read the subtype with:
> >
> > (char-table-subtype (read (current-buffer)))
> >
> > Then Emacs dumps core in version 26 up to current master. Emacs 25 actually
> > ends
> > up in debugger instead of crashing:
>
> (It is not a crash, it's abort.)
>
> Please report a bug with all these details.
>
> AFAICT, this happens because the debugger now uses cl-print to display
> objects in the backtrace, and cl-print calls type-of, which aborts if
> presented with a sub-char-table:
>
> /* "Impossible" cases. */
> case PVEC_MISC_PTR:
> case PVEC_OTHER:
> case PVEC_SUB_CHAR_TABLE:
> case PVEC_FREE: ;
> }
> emacs_abort ();
Fixed on the master branch by a patch proposed by Stefan Monnier on
emacs-devel. See
https://lists.gnu.org/archive/html/emacs-devel/2023-07/msg00121.html.