Subject: bug#62867: closed (Re: bug#62867: segfault in describe_vector)

From: [email-masked] (GNU bug Tracking System)
Date: Sun, 16 Apr 2023 05:54:01 +0000

Your bug report

#62867: segfault in describe_vector

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
62867: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=62867
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#62867: segfault in describe_vector
From: Eli Zaretskii <[email-masked]>
To: Stefan Monnier <[email-masked]>
Cc: [email-masked], [email-masked]
Date: Sun, 16 Apr 2023 08:53:05 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

> From: Stefan Monnier <[email-masked]>
> Cc: Xinyang Chen <[email-masked]>,  [email-masked]
> Date: Sat, 15 Apr 2023 18:16:32 -0400
> 
> > Stefan, can we do better than the below?
> 
> The patch looks about right to me.
> 
> Only detail is that `shadowed_by` contains a binding, so it can be
> a keymap, but it can also be a lambda expression, or a keyboard macro,
> so we shouldn't say "shadowed by a keymap" but just "shadowed" (unless
> we go through the extra trouble of checking if it's a keymap, or if it's
> a ...).

Thanks, installed on the emacs-29 branch with that change, and closing
the bug.

Subject: segfault in describe_vector
From: Xinyang Chen <[email-masked]>
To: [email-masked]
Date: Sat, 15 Apr 2023 08:07:07 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

to reproduce:

(package-initialize)
(require 'evil)
(setq testmap (make-sparse-keymap))
(define-key testmap (kbd "SPC") #'test)
(evil-define-key 'motion global-map (kbd "SPC") testmap)
(evil-mode)
(describe-keymap global-map)

This appears to be caused by keymap.c line 3313
SYMBOL_NAME (shadowed_by)
where shadowed_by don't have to be a symbol (In this case its a keymap)