[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master 620e5a3: Give eval-and-compile a correct edebug spe
From: |
Alan Mackenzie |
Subject: |
[Emacs-diffs] master 620e5a3: Give eval-and-compile a correct edebug spec. Fixes bug #16184 properly. |
Date: |
Sun, 1 Jan 2017 08:31:08 +0000 (UTC) |
branch: master
commit 620e5a3cd4464aaffaa3568d6f6b89764de5cfbd
Author: Alan Mackenzie <address@hidden>
Commit: Alan Mackenzie <address@hidden>
Give eval-and-compile a correct edebug spec. Fixes bug #16184 properly.
* lisp/emacs-lisp/edebug.el (edebug_offset_indices): Revert abortive commit
from Thu Dec 29 09:22:36 2016 +0000 which didn't really fix the bug.
* lisp/emacs-lisp/byte-run.el (eval-and-compile): Change the edebug spec
from
t to (&rest def-form).
---
lisp/emacs-lisp/byte-run.el | 2 +-
lisp/emacs-lisp/edebug.el | 9 +++------
2 files changed, 4 insertions(+), 7 deletions(-)
diff --git a/lisp/emacs-lisp/byte-run.el b/lisp/emacs-lisp/byte-run.el
index 9d2a048..e680ebb 100644
--- a/lisp/emacs-lisp/byte-run.el
+++ b/lisp/emacs-lisp/byte-run.el
@@ -474,7 +474,7 @@ load time. In interpreted code, this is entirely
equivalent to
`progn', except that the value of the expression may be (but is
not necessarily) computed at load time if eager macro expansion
is enabled."
- (declare (debug t) (indent 0))
+ (declare (debug (&rest def-form)) (indent 0))
;; When the byte-compiler expands code, this macro is not used, so we're
;; either about to run `body' (plain interpretation) or we're doing eager
;; macroexpansion.
diff --git a/lisp/emacs-lisp/edebug.el b/lisp/emacs-lisp/edebug.el
index 15b1389..04a493c 100644
--- a/lisp/emacs-lisp/edebug.el
+++ b/lisp/emacs-lisp/edebug.el
@@ -2052,14 +2052,11 @@ expressions; a `progn' form will be returned enclosing
these forms."
(defvar edebug-stack-depth -1)
;; Index of last edebug-stack item.
-(defvar edebug-offset-indices (list 0))
+(defvar edebug-offset-indices nil)
;; Stack of offset indices of visited edebug sexps.
+;; Should be nil at the top level.
;; Each function adds one cons. Top is modified with setcar.
-;; Should be nil at the top level. No longer! There are occasions
-;; when this variable is modified by setcar before a cons has been
-;; pushed by `edebug-enter', e.g. when instrumenting
-;; `c-font-lock-declarations' in .../lisp/progmodes/cc-fonts.el. So
-;; this variable must be initialized to a cons.
+
(defvar edebug-entered nil
;; Non-nil if edebug has already been entered at this recursive edit level.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] master 620e5a3: Give eval-and-compile a correct edebug spec. Fixes bug #16184 properly.,
Alan Mackenzie <=