GNU bug report logs - #8548
23.3; Lisp debugger can't exit recursive edit level

Previous Next

Package: emacs;

Reported by: Uday S Reddy <u.s.reddy <at> cs.bham.ac.uk>

Date: Mon, 25 Apr 2011 13:04:02 UTC

Severity: normal

Found in version 23.3

Done: Chong Yidong <cyd <at> stupidchicken.com>

Bug is archived. No further changes may be made.

Full log


Message #8 received at 8548 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Uday S Reddy <u.s.reddy <at> cs.bham.ac.uk>
Cc: 8548 <at> debbugs.gnu.org
Subject: Re: bug#8548: 23.3; Lisp debugger can't exit recursive edit level
Date: Mon, 25 Apr 2011 12:03:27 -0300
> The Lisp debugger is supposed to enter a recursive editing level.  So, one
> would expect that it would be possible to exit each recursive level
> independently.  The original debugger implemented in Elisp used to work
> fine.  But, ever since the debugger was moved to the C implementation
> (probably Emacs 19), the recursive levels cannot be exited.

> To reproduce the problem, do `M-: (debug)' and then type something
> errorneous, e.g.,

>   e RET (car 1) RET

> A second recursive level gets entered.  However, exit-recursive-edit does
> not do its job here.  It says "Cannot return from the debugger in an error".

This part of the C code was changed recently, so now the behavior is
that you get "Wrong type argument: listp, 1" in the minibuffer and
you're back in the first recursive level (which all sounds right).
OTOH the *Backtrace* buffer does not display the stack trace any more
and is in fundamental mode, so there's still something wrong here.

BTW, you get the same result if you hit `c' rather than calling
exit-recursive-edit.


        Stefan




This bug report was last modified 13 years and 300 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.