Subject: bug#69865: 29.2; Can't instrument `org-babel-exp-results' with edebug

From: Michael Heerdegen <[email-masked]>
Date: Mon, 18 Mar 2024 15:07:26 +0100

Eli Zaretskii <[email-masked]> writes:

> I don't think this has been fixed, because I can reproduce this
> variant of the bug with the current master branch: [...]

Absolutely correct - I noticed that I had a fix in my local build.

Here is a patch:

From d0041aeef4b2f8aa9b31c075966c9c4ac5d3f5d5 Mon Sep 17 00:00:00 2001
From: Michael Heerdegen <[email-masked]>
Date: Sun, 18 Sep 2022 12:26:08 +0200
Subject: [PATCH] Correct (debug body) edebug specs

Fixes Bug#69865 among other things.

* lisp/org/ob-exp.el (org-babel-exp--at-source):
* test/lisp/dired-tests.el (dired-test-with-temp-dirs):
* test/lisp/emacs-lisp/package-tests.el (with-fake-help-buffer):
Fix broken edebug specs (debug body) -> (debug (body)).
---
 lisp/org/ob-exp.el                    | 2 +-
 test/lisp/dired-tests.el              | 2 +-
 test/lisp/emacs-lisp/package-tests.el | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/lisp/org/ob-exp.el b/lisp/org/ob-exp.el
index 489ffdb330b..3c9395940ca 100644
--- a/lisp/org/ob-exp.el
+++ b/lisp/org/ob-exp.el
@@ -62,7 +62,7 @@ org-babel-exp--at-source
 Source is located in `org-babel-exp-reference-buffer'.  The value
 returned is the value of the last form in BODY.  Assume that
 point is at the beginning of the Babel block."
-  (declare (indent 1) (debug body))
+  (declare (indent 1) (debug (body)))
   `(let ((source (get-text-property (point) 'org-reference)))
      ;; Source blocks created during export process (e.g., by other
      ;; source blocks) are not referenced.  In this case, do not move
diff --git a/test/lisp/dired-tests.el b/test/lisp/dired-tests.el
index 651b77500a1..1a57d2da9e1 100644
--- a/test/lisp/dired-tests.el
+++ b/test/lisp/dired-tests.el
@@ -367,7 +367,7 @@ dired-test-bug59047

 (defmacro dired-test-with-temp-dirs (just-empty-dirs &rest body)
   "Helper macro for Bug#27940 test."
-  (declare (indent 1) (debug body))
+  (declare (indent 1) (debug (body)))
   (let ((dir (make-symbol "dir")))
     `(ert-with-temp-directory ,dir
        (let* ((dired-deletion-confirmer (lambda (_) "yes")) ; Suppress prompts.
diff --git a/test/lisp/emacs-lisp/package-tests.el b/test/lisp/emacs-lisp/package-tests.el
index d95b94f2145..6d04850aeca 100644
--- a/test/lisp/emacs-lisp/package-tests.el
+++ b/test/lisp/emacs-lisp/package-tests.el
@@ -168,7 +168,7 @@ with-package-test

 (defmacro with-fake-help-buffer (&rest body)
   "Execute BODY in a temp buffer which is treated as the \"*Help*\" buffer."
-  (declare (debug body))
+  (declare (debug (body)))
   `(with-temp-buffer
     (help-mode)
     ;; Trick `help-buffer' into using the temp buffer.
--
2.39.2

Sorry for the confusion,

Michael.