bug#3466: 23.0.94; have `d' in debugger treat macro expansion like `c' does
"Drew Adams" <[email protected]>
| Newsgroups | gmane.emacs.bugs,gmane.emacs.pretest.bugs |
|---|---|
| Message-ID | <[email protected]> |
Feature request - In the Lisp debugger (the one for `debug-on-entry' etc.), if you're going along doing `d, d, d...', and you get to a Lisp macro, such as `dolist', you must switch to `c' instead of `d', if you don't want to drill down into the steps of the macro expansion itself. It would be good to be able to optionally have `d' skip over macro expansions (that is, expand all at once, like `c' does). A new user option could control this. [Alternatively, we could have a different key from `d', say `s' (for "step"), that does this always - does what `d' does except for macros, where it does what `c' does. But I suspect a user option would be sufficient - you probably either want to do this all the time or you don't (no need for two different stepping keys).] With the alternative behavior, in `dolist', for example, you would step through the function calls, using `d', and automatically skip over the macro expansions, also using `d'. There are two macro expansions for `dolist': #[(spec &rest body) "...] for `dolist' itself and #[(name &rest body) "...] for `block'. No need to switch from `d' to `c' for those expansions. In something like `dolist', you typically just want to get quickly to the loop iterations. Using the debugger with things like `dolist' (which I've been doing for years) is a pain, compared to using the debugger with, say, `while'. It's almost enough of a pain to make one avoid using `dolist' and such. In GNU Emacs 23.0.94.1 (i386-mingw-nt5.1.2600) of 2009-05-24 on SOFT-MJASON Windowing system distributor `Microsoft Corp.', version 5.1.2600 configured using `configure --with-gcc (3.4)'