Subject: bug#79485: 31.0.50; Loaded files inherit read-symbol-shorthands

From: Eli Zaretskii <[email-masked]>
Date: Mon, 22 Sep 2025 09:41:19 +0300

> From: "David J. Rosenbaum" <[email-masked]>
> 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.