GNU bug report logs - #69168
[BUG] 30.0.50; pp-emacs-lisp-code produces invalid elisp for backquoted forms

Previous Next

Package: emacs;

Reported by: No Wayman <iarchivedmywholelife <at> gmail.com>

Date: Thu, 15 Feb 2024 19:19:01 UTC

Severity: normal

Done: Michael Heerdegen <michael_heerdegen <at> web.de>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: No Wayman <iarchivedmywholelife <at> gmail.com>
To: 69168 <at> debbugs.gnu.org
Subject: bug#69168: [BUG] 30.0.50; pp-emacs-lisp-code produces invalid elisp for backquoted forms
Date: Thu, 15 Feb 2024 14:19:19 -0500
Observe the output of the following two expressions:


(eval (read (with-temp-buffer
             (pp-emacs-lisp-code '`(1+ ,(1+ 1)))
             (buffer-string)))
     t)

;; => eval: Invalid function: `(1+ (,(1+ 1)))

(eval
(read (with-temp-buffer
        (insert (pp-to-string '`(1+ ,(1+ 1))))
        (buffer-string)))
t)

;; => (1+ 2)


The form returned by pp-emacs-lisp-code is:

(` (1+ (, (1+ 1))))

The backqoute and comma are not escaped, resulting in the error.
It looks like the logic in pp--insert-lisp would need to be 
extended to account for backquoting constructs.

In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
3.24.41, cairo version 1.18.0) of 2024-02-03 built on laptop
Repository revision: 4ebded3f5ee8617ac6b1debaa01706cd78206f39
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 
11.0.12101011
System Description: Arch Linux




This bug report was last modified 1 year and 76 days ago.

Previous Next


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