Received: (at 80170) by debbugs.gnu.org; 18 Jan 2026 12:14:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jan 18 07:14:13 2026
Received: from localhost ([127.0.0.1]:48618 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1vhRfY-0005Qt-Mz
for submit <at> debbugs.gnu.org; Sun, 18 Jan 2026 07:14:13 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:44356)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1vhRfT-0005QF-Uh
for 80170 <at> debbugs.gnu.org; Sun, 18 Jan 2026 07:14:10 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
id 1vhRfN-0002u5-QR; Sun, 18 Jan 2026 07:14:02 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
mime-version; bh=WxYoi6CM0gt+nkindd1zdsTgUPgRAJfGHYCnKeaechM=; b=NiTj1SYfghFW
fmO6QM1KfPnUOFZh9pxP97ot0nE7JjJWLqikNTRkpDyRjKbaWeu4bIwygQaQzB35i49stlJlbyYCT
7ZOOiJUUQmWiRD97nJgEEXszPjc1zJ8JUv9UGeRHFNtCltqx/S9U4drDKH6VMEoOb7XnaNr/qp5/N
5FlJoHtILld+B6AfEQdNIC8zt8ITPGz/kcfreTzqihMHh2TFMKSmSNek4rdH7vNTEV702HDGoid+9
ZBUzPetAqI0xIAr8DF5i5TDobbvlsFjlgYOyj4GynZOiZFJwAN9pdwcKEkMMH7sy5yRmDrPEolFeQ
Ug1mBeC2JdYF7X45+OmYgw==;
Date: Sun, 18 Jan 2026 14:13:58 +0200
Message-Id: <86tswjnmnt.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Gal Lakovnik Gorenec <gal.lakovnik.gorenec@HIDDEN>,
Stefan Monnier <monnier@HIDDEN>
In-Reply-To: <87ldi5s5cg.fsf@HIDDEN> (bug-gnu-emacs@HIDDEN)
Subject: Re: bug#80170: 30.2;
describe-mode incorrectly shows binding shadowed by minor mode
References: <87h5su9uzw.fsf@HIDDEN> <87ldi5s5cg.fsf@HIDDEN>
X-Spam-Score: 2.0 (++)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
has NOT identified this incoming email as spam. The original
message has been attached to this so you can view it or label
similar future email. If you have any questions, see
the administrator of that system for details.
Content preview: > Date: Sat, 10 Jan 2026 18:14:09 +0000 > From: Gal Lakovnik
Gorenec via "Bug reports for GNU Emacs, > the Swiss army knife of text editors"
<bug-gnu-emacs@HIDDEN> > > > Evaluating the following code [...]
Content analysis details: (2.0 points, 10.0 required)
pts rule name description
---- ---------------------- --------------------------------------------------
-0.0 SPF_HELO_PASS SPF: HELO matches SPF record
-0.0 SPF_PASS SPF: sender matches SPF record
2.0 PDS_OTHER_BAD_TLD Untrustworthy TLDs
[URI: test.xyz (xyz)]
X-Debbugs-Envelope-To: 80170
Cc: 80170 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.3 (-)
> Date: Sat, 10 Jan 2026 18:14:09 +0000
> From: Gal Lakovnik Gorenec via "Bug reports for GNU Emacs,
> the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN>
>
>
> Evaluating the following code reproduces the issue (again, starting from a clean
> emacs session):
>
> (defvar shadow-bindings-mode-map
> (let ((map (make-sparse-keymap)))
> (define-key map (kbd "C-c C-c") 'shadow-message)
> map)
> "Keymap for shadow-bindings-mode")
>
> ;;;###autoload
> (define-minor-mode
> shadow-bindings-mode
> "A minor mode defining a binding that conflicts with a binding of a derived mode.
> Enabled by parent"
> :lighter " Shadowed"
> :keymap shadow-bindings-mode-map)
>
> ;;;###autoload
> (defun shadow-message ()
> (interactive)
> (message "This binding shadows a derived mode's binding"))
>
> (defvar parent-mode-hook '(shadow-bindings-mode))
>
> ;;;###autoload
> (define-derived-mode
> parent-mode
> prog-mode
> "Parent"
> "A parent mode that enables a minor mode via its startup hook.")
>
> (defun child-message ()
> (interactive)
> (message "Child-mode's binding calls this command."))
>
> (defvar child-mode-map
> (let ((map (make-sparse-keymap "Child Keymap")))
> (define-key map (kbd "C-c C-c") 'child-message)
> map)
> "Keymap for child-mode")
>
> ;;;###autoload
> (define-derived-mode
> child-mode
> parent-mode
> "Child"
> "A derived mode.")
>
> ;;;###autoload
> (add-to-list 'auto-mode-alist '("\\.xyz\\'" . child-mode))
I think this code bumps into some intimate internal implementation
details, which have to do with exactly when the parent mode's hook
runs and installs the keymap, and when the child mode's settings are
installed. Because you turn on shadow-bindings-mode from a hook of
the parent mode, which itself installs its settings because child-mode
is its descendant.
Stefan, what should be expected in trhis case?
> After evaluation, opening "test.xyz" exhibits the problem referred to
> in the original report, namely:
> C-c C-c runs 'shadow-message
> C-h m incorrectly lists "C-c C-c" as bound to 'child-message
What I see here is that "C-h m" shows "C-c C-c" bound to both
child-message (in the bindings that describe the Major mode) and to
shadow-message (below that, in the bindings that describe this local
minor mode.
> C-h k C-c C-c and C-h b both correctly show the binding.
> The issue persists regardless of whether the minor mode is enabled from
> the parent hook or manually.
>
> While writing this I noticed that the binding is correctly shown in
> the description of the minor mode. Is this the intended functionality?
> Is describe-mode supposed to show shadowed bindings without indicating
> said shadowing?
>
> Anyway, if this is NOT intended functionality -- I've been lurking in
> emacs-devel with the intention of starting to contribute and this
> (famous last words) doesn't seem too complicated. I'd be happy to
> submit a patch.
>
> P.S: Thank you and everyone else involved for your wonderful work.
bug-gnu-emacs@HIDDEN:bug#80170; Package emacs.
Full text available.
Received: (at 80170) by debbugs.gnu.org; 10 Jan 2026 19:51:22 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jan 10 14:51:22 2026
Received: from localhost ([127.0.0.1]:58452 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1veezY-0003lg-Lp
for submit <at> debbugs.gnu.org; Sat, 10 Jan 2026 14:51:22 -0500
Received: from mail-4316.protonmail.ch ([185.70.43.16]:22737)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <gal.lakovnik.gorenec@HIDDEN>)
id 1vedTi-0007dm-0F
for 80170 <at> debbugs.gnu.org; Sat, 10 Jan 2026 13:14:24 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=proton.me;
s=protonmail; t=1768068853; x=1768328053;
bh=vvfP2k9dgc4OAJktqv2zD+FXSLMWEa5BIWTFnAR7B+Q=;
h=Date:To:From:Subject:Message-ID:Feedback-ID:From:To:Cc:Date:
Subject:Reply-To:Feedback-ID:Message-ID:BIMI-Selector;
b=cDthMgmbROv0QrR7bBge5mD0HY45F4E+N98X2DZvK2EdlCjQMHATRGixWrKT9bxWi
LwBy9dq0FgCEYvfB+xcLB/rpFSs8iV58UkwIc7/08o/Y1Xm/w/iwW09aNfTMkG4ieP
nw28g2xEwC6O5lqYQjQGf7Zg2gyg7BGY/hnNKpKDOWAVp3aJLRrdMMZmwOdfEepH9f
muqPP07w173srs/r5sEWdAXktoPyrdz5/ufuvoHz8T8CHfKYigO8YaqLaVBQ9qDS6I
4fo/Ky/FBu1ygFLROa5zJRa2WuiooAiP0oAwTi2e4IQTG5sXUMyRTMd0js5ZCpiY7T
E0f6oH6yngvyA==
Date: Sat, 10 Jan 2026 18:14:09 +0000
To: 80170 <at> debbugs.gnu.org
From: Gal Lakovnik Gorenec <gal.lakovnik.gorenec@HIDDEN>
Subject: Re: bug#80170: 30.2;
describe-mode incorrectly shows binding shadowed by minor mode
Message-ID: <87ldi5s5cg.fsf@HIDDEN>
Feedback-ID: 58735494:user:proton
X-Pm-Message-ID: c200341c74953f9e01f542a71a887a803df424fc
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 4.3 (++++)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
has NOT identified this incoming email as spam. The original
message has been attached to this so you can view it or label
similar future email. If you have any questions, see
the administrator of that system for details.
Content preview: Hello Eli, my apologies. Pushing through my laziness would
have saved me a bit of embarassment, and you a bit of time. In my defense,
it was around 3 a.m. :) Evaluating the following code reproduces the issue
(again, starting from a clean emacs session):
Content analysis details: (4.3 points, 10.0 required)
pts rule name description
---- ---------------------- --------------------------------------------------
0.0 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED RBL: ADMINISTRATOR NOTICE:
The query to Validity was blocked. See
https://knowledge.validity.com/hc/en-us/articles/20961730681243
for more information.
[185.70.43.16 listed in sa-accredit.habeas.com]
0.0 RCVD_IN_MSPIKE_H4 RBL: Very Good reputation (+4)
[185.70.43.16 listed in wl.mailspike.net]
0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The
query to Validity was blocked. See
https://knowledge.validity.com/hc/en-us/articles/20961730681243
for more information.
[185.70.43.16 listed in bl.score.senderscore.com]
-0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/,
no trust [185.70.43.16 listed in list.dnswl.org]
2.0 PDS_OTHER_BAD_TLD Untrustworthy TLDs
[URI: test.xyz (xyz)]
-0.0 SPF_PASS SPF: sender matches SPF record
-0.0 SPF_HELO_PASS SPF: HELO matches SPF record
0.0 RCVD_IN_MSPIKE_WL Mailspike good senders
2.3 AC_FROM_MANY_DOTS Multiple periods in From user name
X-Debbugs-Envelope-To: 80170
X-Mailman-Approved-At: Sat, 10 Jan 2026 14:51:19 -0500
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.0 (+)
Hello Eli,
my apologies. Pushing through my laziness would have saved me a bit of
embarassment, and you a bit of time. In my defense, it was around 3 a.m. =
:)
Evaluating the following code reproduces the issue (again, starting from =
a clean
emacs session):
(defvar shadow-bindings-mode-map
(let ((map (make-sparse-keymap)))
(define-key map (kbd "C-c C-c") 'shadow-message)
map)
"Keymap for shadow-bindings-mode")
;;;###autoload
(define-minor-mode
shadow-bindings-mode
"A minor mode defining a binding that conflicts with a binding of a=
derived mode.
Enabled by parent"
:lighter " Shadowed"
:keymap shadow-bindings-mode-map)
;;;###autoload
(defun shadow-message ()
(interactive)
(message "This binding shadows a derived mode's binding"))
(defvar parent-mode-hook '(shadow-bindings-mode))
;;;###autoload
(define-derived-mode
parent-mode
prog-mode
"Parent"
"A parent mode that enables a minor mode via its startup hook.")
(defun child-message ()
(interactive)
(message "Child-mode's binding calls this command."))
(defvar child-mode-map
(let ((map (make-sparse-keymap "Child Keymap")))
(define-key map (kbd "C-c C-c") 'child-message)
map)
"Keymap for child-mode")
;;;###autoload
(define-derived-mode
child-mode
parent-mode
"Child"
"A derived mode.")
;;;###autoload
(add-to-list 'auto-mode-alist '("\\.xyz\\'" . child-mode))
After evaluation, opening "test.xyz" exhibits the problem referred to
in the original report, namely:
C-c C-c runs 'shadow-message
C-h m incorrectly lists "C-c C-c" as bound to 'child-message
=20
C-h k C-c C-c and C-h b both correctly show the binding.
The issue persists regardless of whether the minor mode is enabled from
the parent hook or manually.
While writing this I noticed that the binding is correctly shown in
the description of the minor mode. Is this the intended functionality?
Is describe-mode supposed to show shadowed bindings without indicating
said shadowing?
Anyway, if this is NOT intended functionality -- I've been lurking in
emacs-devel with the intention of starting to contribute and this
(famous last words) doesn't seem too complicated. I'd be happy to
submit a patch.
P.S: Thank you and everyone else involved for your wonderful work.
=20
--=20
Kind regards,
Gal Lakovnik Gorenec
bug-gnu-emacs@HIDDEN:bug#80170; Package emacs.
Full text available.Received: (at 80170) by debbugs.gnu.org; 10 Jan 2026 10:48:43 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jan 10 05:48:43 2026 Received: from localhost ([127.0.0.1]:55106 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1veWWQ-0005XF-NV for submit <at> debbugs.gnu.org; Sat, 10 Jan 2026 05:48:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41060) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1veWWO-0005X1-2D for 80170 <at> debbugs.gnu.org; Sat, 10 Jan 2026 05:48:40 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1veWWI-0004TC-5c; Sat, 10 Jan 2026 05:48:34 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=wD6Cvt/mU6l5Ma2S+7NexLKo6qcEpi+fRZ9t0rBRwaM=; b=E2K1kf48NOs+ l/5USmttjA+kD6Hu6aGHKPJ2MfCjVrpvibRNVC3iBDMwrJIDWhxvacmfDxqxwHEn08HdSwCWH4IZx /3MDvXy4vNiDylUutVojAtrSufemwn7f/pdyDTevet4NpXEXKREGZJxUTSX4KYgbXswi1icrPhh/h CEMZFRZ+zhjtJYqeGyhQxMQXctslKqFpG5QkLylHw2zEm43ACEPtbqEQAha7zX7l3GYD+lsdDL9ow VNpJpmn0+a/om2Zc+chpczs2sNAWrawQO0oBSp2+5JSfuYGPf3wejUsYBzbFO15bFn7FQhx3P51Z1 fQ8Phkfa+LgwfB4SYqKebQ==; Date: Sat, 10 Jan 2026 12:48:29 +0200 Message-Id: <864iotagle.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Gal Lakovnik Gorenec <gal.lakovnik.gorenec@HIDDEN> In-Reply-To: <87h5su9uzw.fsf@HIDDEN> (bug-gnu-emacs@HIDDEN) Subject: Re: bug#80170: 30.2; describe-mode incorrectly shows binding shadowed by minor mode References: <87h5su9uzw.fsf@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 80170 Cc: 80170 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > Date: Sat, 10 Jan 2026 00:22:47 +0000 > From: Gal Lakovnik Gorenec via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> > > > Bug reproducible from a clean emacs: > > Shell command: > emacs -Q --init-directory="$(mktemp -d)" > > >From within emacs: > package-install RET haskell-mode RET > > eval the following use-package invocation: > NOTE: This is not a bug about tidal-mode > > (use-package tidal > :vc > (:url "https://codeberg.org/uzu/tidal")) > > Open an empty tidal file: > C-c C-f ~/test.tidal > > Check describe-mode, describe-key and describe-bindings: > C-h m -> (incorrectly) shows C-c C-c as bound to tidal-run-line > C-h k C-c C-c -> > (correctly) shows C-c C-c as bound to haskell-process-cabal-build > C-h b -> > (correctly) shows C-c C-c as bound to haskell-process-cabal-build > > tidal-mode is a fairly simple major-mode, derived from haskell-mode. > C-c C-c is part of its default keymap. > haskell-process-cabal-build belongs to the minor > haskell-interactive-mode, > enabled by the haskell-mode default hook. Thanks, but is it possible to show a reproduction recipe that requires neither haskell nor tidal being installed? If the problem is inherent in the Emacs core, and this report is neither against haskell-mode nor against tidal-modem there should be no problem with coming up with a recipe that uses only the built-in features, right? A recipe that doesn't depend on external packages is likely to be handled faster and in a more efficient way. TIA
bug-gnu-emacs@HIDDEN:bug#80170; Package emacs.
Full text available.Received: (at submit) by debbugs.gnu.org; 10 Jan 2026 07:44:06 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jan 10 02:44:06 2026 Received: from localhost ([127.0.0.1]:54409 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1veTdk-000592-SF for submit <at> debbugs.gnu.org; Sat, 10 Jan 2026 02:44:06 -0500 Received: from lists.gnu.org ([2001:470:142::17]:58704) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <gal.lakovnik.gorenec@HIDDEN>) id 1veMl6-0002FY-3Y for submit <at> debbugs.gnu.org; Fri, 09 Jan 2026 19:23:13 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <gal.lakovnik.gorenec@HIDDEN>) id 1veMl0-0002af-M5 for bug-gnu-emacs@HIDDEN; Fri, 09 Jan 2026 19:23:06 -0500 Received: from mail-4322.protonmail.ch ([185.70.43.22]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <gal.lakovnik.gorenec@HIDDEN>) id 1veMkw-0004oR-EU for bug-gnu-emacs@HIDDEN; Fri, 09 Jan 2026 19:23:06 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=proton.me; s=protonmail; t=1768004572; x=1768263772; bh=bOvGn0pbCK/vLyUVPJiuTyjmJHgowrox3Zs6Na4xcR0=; h=Date:To:From:Subject:Message-ID:Feedback-ID:From:To:Cc:Date: Subject:Reply-To:Feedback-ID:Message-ID:BIMI-Selector; b=WKWFZyUqqB8zFgU8Cvv9AgRDTloPMragKN2PEJLk4QtWF06FV7zSFy0xRoLDDTbVA V0b3bIUQzr2I7lkfhXMuHta/d6QEYJdj9FBLKgD025ynK2u0s5WH8Ycr9XK1BzZ87g iOeZu9iabw3tITHpHASXNIeILsdXUpTUnWxj1Qpdq3K0fTvapaO0KkqtNjl3ztD3Io U+lg56xgce4VewKxZG++uQg0Ey2C1OceAUUXKnIF0E6qf+j/2XbIh9SZpIhUUMq0SV P8ihlIaahPykOIlJUQQ3J0FYoDhBt9582IsDUGnw2zkoR2BabuhKkQjzKz8KN7NdNl XYHjysy9L+h6g== Date: Sat, 10 Jan 2026 00:22:47 +0000 To: bug-gnu-emacs@HIDDEN From: Gal Lakovnik Gorenec <gal.lakovnik.gorenec@HIDDEN> Subject: 30.2; describe-mode incorrectly shows binding shadowed by minor mode Message-ID: <87h5su9uzw.fsf@HIDDEN> Feedback-ID: 58735494:user:proton X-Pm-Message-ID: 137f2d598d8e87938c03d97a7be328f53ec25b13 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=185.70.43.22; envelope-from=gal.lakovnik.gorenec@HIDDEN; helo=mail-4322.protonmail.ch X-Spam_score_int: 2 X-Spam_score: 0.2 X-Spam_bar: / X-Spam_report: (0.2 / 5.0 requ) AC_FROM_MANY_DOTS=2.282, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Sat, 10 Jan 2026 02:44:03 -0500 X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.0 (/) Bug reproducible from a clean emacs: Shell command: emacs -Q --init-directory=3D"$(mktemp -d)" From within emacs: package-install RET haskell-mode RET eval the following use-package invocation: NOTE: This is not a bug about tidal-mode (use-package tidal :vc (:url "https://codeberg.org/uzu/tidal")) Open an empty tidal file: C-c C-f ~/test.tidal Check describe-mode, describe-key and describe-bindings: C-h m -> (incorrectly) shows C-c C-c as bound to tidal-run-line C-h k C-c C-c -> (correctly) shows C-c C-c as bound to haskell-process-cabal-build C-h b -> (correctly) shows C-c C-c as bound to haskell-process-cabal-build tidal-mode is a fairly simple major-mode, derived from haskell-mode. C-c C-c is part of its default keymap. haskell-process-cabal-build belongs to the minor haskell-interactive-mode, enabled by the haskell-mode default hook. ------------- In GNU Emacs 30.2 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.50, cairo version 1.18.4) System Description: Arch Linux Configured using: 'configure --with-pgtk --sysconfdir=3D/etc --prefix=3D/usr --libexecdir=3D/usr/lib --localstatedir=3D/var --disable-build-details --with-cairo --with-harfbuzz --with-libsystemd --with-modules --with-native-compilation=3Daot --with-tree-sitter 'CFLAGS=3D-march=3Dx86-= 64 -mtune=3Dgeneric -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3D3 -Wformat -Werror=3Dformat-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -ffile-prefix-map=3D/build/emacs/src=3D/usr/src/debug/emacs -flto=3Dauto' 'LDFLAGS=3D-Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs -flto=3Dauto' 'CXXFLAGS=3D-march=3Dx86-64 -mtune=3Dgeneric -O2 -pipe -fno-plt -fexceptio= ns -Wp,-D_FORTIFY_SOURCE=3D3 -Wformat -Werror=3Dformat-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wp,-D_GLIBCXX_ASSERTIONS -g -ffile-prefix-map=3D/build/emacs/src=3D/usr/src/debug/emacs -flto=3Dauto'' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG LCMS2 LIBOTF LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM GTK3 ZLIB Important settings: value of $LANG: C.UTF-8 locale-coding-system: utf-8-unix Major mode: Haskell Tidal Minor modes in effect: interactive-haskell-mode: t haskell-indentation-mode: t tooltip-mode: t global-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 minibuffer-regexp-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 shortdoc help-fns tidal pulse color find-lisp scheme tidal-autoloads vc-hg vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs log-view pcvs-util vc-git diff-mode track-changes package-vc vc vc-dispatcher cl-extra use-package-core haskell-indent haskell-doc advice comp-run comp-common haskell-c2hs ert ewoc debug backtrace find-func quail help-mode inf-haskell haskell-decl-scan shell pcomplete imenu haskell haskell-completions haskell-load haskell-commands highlight-uses-mode haskell-modules haskell-sandbox haskell-navigate-imports haskell-repl haskell-svg haskell-collapse hideshow haskell-debug haskell-interactive-mode haskell-presentation-mode haskell-compile haskell-process haskell-session haskell-hoogle view haskell-mode haskell-cabal haskell-utils haskell-font-lock haskell-indentation haskell-string haskell-sort-imports haskell-lexeme rx haskell-align-imports haskell-complete-module haskell-ghc-support noutline outline flymake-proc flymake warnings thingatpt etags fileloop generator xref project dabbrev haskell-customize compile comint ansi-osc ansi-color ring info haskell-mode-autoloads easy-mmode loaddefs-gen lisp-mnt radix-tree tar-mode arc-mode archive-mode cus-edit pp cus-start cus-load wid-edit mm-archive message sendmail yank-media dired dired-loaddefs rfc822 mml mml-sec epa derived gnus-util text-property-search time-date mailabbrev gmm-utils mailheader mm-decode mm-bodies mm-encode mail-utils gnutls network-stream url-cache url-http url-auth mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr url-gw nsm puny epg rfc6068 epg-config finder-inf package browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs icons password-cache json subr-x map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/pgtk-win pgtk-win term/common-win touch-screen pgtk-dnd 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 dbusbind inotify dynamic-setting system-font-setting font-render-setting cairo gtk pgtk lcms2 multi-tty move-toolbar make-network-process native-compile emacs) Memory information: ((conses 16 343852 61074) (symbols 48 19172 6) (strings 32 81018 3736) (string-bytes 1 2626118) (vectors 16 34054) (vector-slots 8 452873 27821) (floats 8 240 316) (intervals 56 1773 151) (buffers 992 22)) --=20 Kind regards, Gal Lakovnik Gorenec
Gal Lakovnik Gorenec <gal.lakovnik.gorenec@HIDDEN>:bug-gnu-emacs@HIDDEN.
Full text available.bug-gnu-emacs@HIDDEN:bug#80170; Package emacs.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.