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).
This commit is contained in:
Alan Mackenzie 2017-01-01 08:28:04 +00:00
parent 535ef18ed5
commit 620e5a3cd4
2 changed files with 4 additions and 7 deletions

View file

@ -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.