[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#26847: 26.0.50; Using edebug-step-in on a macro switches to go-mode
From: |
Gemini Lasswell |
Subject: |
bug#26847: 26.0.50; Using edebug-step-in on a macro switches to go-mode |
Date: |
Sun, 20 Oct 2019 22:18:54 -0700 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.3.50 (gnu/linux) |
Lars Ingebrigtsen <larsi@gnus.org> writes:
> I'm unable to reproduce this in Emacs 27. When I hit `i', I'm then
> edebugging the `push' macro, and then I can step through it, and then
> I'm back to stepping through my-try-thing.
>
> Are you still seeing this bug in Emacs 27?
In Emacs 26, eager macro expansion happened when instrumenting code for
Edebug using eval-defun. In current master, it's not getting done.
Looking at (symbol-function 'my-try-thing) in both versions will show
you the difference.
The lack of macroexpansion doesn't only happen when instrumenting for
Edebug. If you evaluate a function definition with eval-buffer or
eval-last-sexp then macroexpansion is done, but if you evaluate it with
eval-defun with or without the universal argument, then no
macroexpansion happens. This is a change from Emacs 26, and is masking
the original bug.
If you use these steps to reproduce, with the same sample code:
M-x edebug-all-defs RET
M-x eval-buffer RET
M-: (my-try-thing 'a) RET
i
then the original bug still occurs.