GNU bug report logs - #79485
31.0.50; Loaded files inherit read-symbol-shorthands

Previous Next

Package: emacs;

Reported by: "David J. Rosenbaum" <djr7c4 <at> gmail.com>

Date: Sun, 21 Sep 2025 23:59:01 UTC

Severity: normal

Found in version 31.0.50

Full log


View this message in rfc822 format

From: João Távora <joaotavora <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 79485 <at> debbugs.gnu.org, "David J. Rosenbaum" <djr7c4 <at> gmail.com>
Subject: bug#79485: 31.0.50; Loaded files inherit read-symbol-shorthands
Date: Mon, 22 Sep 2025 11:52:33 +0100
[Message part 1 (text/plain, inline)]
Here's the reply I meant to send to the tracker but sent to Eli only on
accident:

Shorthands are read at file read-time and specified exclusively as per-file
variables. So I don't understand this about inheritance from load. Also
they were designed to abbreviate prefixes, not full symbol names, so the db
idea is probably not going to work. As far as I remember, these things were
well explained in the manual...

João

On Mon, Sep 22, 2025, 07:41 Eli Zaretskii <eliz <at> gnu.org> wrote:

> > From: "David J. Rosenbaum" <djr7c4 <at> gmail.com>
> > Date: Sun, 21 Sep 2025 16:58:06 -0700
> >
> > Hello,
> >
> > I am using read-symbol-shorthands to alias db to
> > cl-destructuring-bind. It works but causes problems when I load a file
> > containing a symbol that starts with db. For example, one can use emacs
> -Q
> > with the following file.
> >
> > ================================================================
> > (require 'tramp-gvfs)
> >
> > ;; Local Variables:
> > ;; read-symbol-shorthands: (("db" . "cl-destructuring-bind"))
> > ;; End:
> > ================================================================
> >
> > To reproduce, save the above and load it with M-x load-file. This
> > results in the following error.
> >
> > ================================================================
> > Loading /home/david/tmp/read-symbol-example.el (source)...
> > byte-code: Cannot open load file: No such file or directory,
> cl-destructuring-bindus
> > ================================================================
> >
> > The problem seems to be that tramp-gvfs requires dbus and db is being
> > replaced with cl-destructuring-bind. IMO, loaded files should not inherit
> > shorthands from files that require them since those shorthands are only
> > valid for that particular file.
>
> Thanks, I hope João (CC'ed) will have some ideas or suggestions.
>
[Message part 2 (text/html, inline)]

This bug report was last modified today.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.