diff options
author | Alan Mackenzie <acm@muc.de> | 2017-01-01 08:28:04 +0000 |
---|---|---|
committer | Alan Mackenzie <acm@muc.de> | 2017-01-01 08:28:04 +0000 |
commit | 620e5a3cd4464aaffaa3568d6f6b89764de5cfbd (patch) | |
tree | 1bb99c1425f8bad8b2f99a391dd16c79d4464a0d /lisp/emacs-lisp | |
parent | 535ef18ed523862db405d22ec4bea0bbfd4172ce (diff) | |
download | emacs-620e5a3cd4464aaffaa3568d6f6b89764de5cfbd.tar.gz |
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).
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r-- | lisp/emacs-lisp/byte-run.el | 2 | ||||
-rw-r--r-- | 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 9d2a048f365..e680ebbdc58 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 15b1389c2f7..04a493c826f 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. |