GNU bug report logs - #65063
30.0.50; Macro indentation in emacs-lisp-mode when the macro definition is not yet loaded

Previous Next

Package: emacs;

Reported by: Ihor Radchenko <yantar92 <at> posteo.net>

Date: Sat, 5 Aug 2023 06:29:01 UTC

Severity: normal

Found in version 30.0.50

To reply to this bug, email your comments to 65063 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#65063; Package emacs. (Sat, 05 Aug 2023 06:29:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Ihor Radchenko <yantar92 <at> posteo.net>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sat, 05 Aug 2023 06:29:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Ihor Radchenko <yantar92 <at> posteo.net>
To: bug-gnu-emacs <at> gnu.org
Subject: 30.0.50; Macro indentation in emacs-lisp-mode when the macro
 definition is not yet loaded
Date: Sat, 05 Aug 2023 06:29:05 +0000
Consider the following:

1. File yant-test.el
(defmacro yant/test (param &rest body)
  ""
  (declare (indent 1))
  `(let ((foo ,param))
     ,@body))

(provide 'yant-test)

2. Put this file into the load-path, but do not load.

3. File yant-test2.el

(require 'yant-test)

(yant/test 1
	   (+ 1 2))

In the above file, M-x indent-region on the macro call will yield the
above, incorrect, indentation.

Expected:

(yant/test 1
  (+ 1 2))

I am not sure if there is a clean solution to this problem, but it has
been bugging me for quite some time now, especially when I use
aggressive-indent-mode that messes up indentation in the whole file in
such scenario.

In GNU Emacs 30.0.50 (build 5, x86_64-pc-linux-gnu, GTK+ Version
 3.24.38, cairo version 1.17.8) of 2023-08-04 built on localhost
Repository revision: ce48073f1597ceecb82800e71c89b53badc9f9d0
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101008
System Description: Gentoo Linux


-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>




This bug report was last modified 273 days ago.

Previous Next


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