unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: "Štěpán Němec" <stepnem@gmail.com>
To: rms@gnu.org
Cc: 7825@debbugs.gnu.org, Stefan Monnier <monnier@IRO.UMontreal.CA>
Subject: bug#7825: Cannot return from the debugger
Date: Wed, 12 Jan 2011 10:04:29 +0100	[thread overview]
Message-ID: <87sjwy4hnm.fsf@gmail.com> (raw)
In-Reply-To: <E1Pct5Z-0000AX-6J@fencepost.gnu.org> (Richard Stallman's message of "Wed, 12 Jan 2011 00:17:41 -0500")

Richard Stallman <rms@gnu.org> writes:

>     The limitation that we "Cannot return from the debugger in an error",
>     is a bug: we should be able to continue (i.e. run the code of the
>     corresponding error handler), just as if the debugger had not been invoked.
>
> That is fine in theory, but it would imply that any place that can get
> an error can also GC.
>
> If we make GCPRO a no-op on all platforms, allowing those places to GC
> may not require massive changes.  But lots of places in the C code
> would still have to be checked for possible bugs.
>
> I don't remember how string relocation works nowadays.  It used to be
> the case that many places in the C code had char * pointers into Lisp
> strings, which could be invalidated by a GC.  If this is still an
> issue, then keeping such a pointer across something that reports an
> error would be a bug.

I'm not sure I understand what you two are saying or how that relates to
the problem at hand, but what a decent Lisp system usually does when an
error happens inside the debugger is just add another debugging layer on
the stack, i.e. start the debugger on the "newer" error; then when you
exit the inner level, you end up back debugging the outer level. Why is
that not the case in Emacs? The "Cannot return from the debugger in an
error" thing has always annoyed me, too.

  Štěpán





  reply	other threads:[~2011-01-12  9:04 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-11 21:32 bug#7825: Cannot return from the debugger Stefan Monnier
2011-01-12  5:17 ` Richard Stallman
2011-01-12  9:04   ` Štěpán Němec [this message]
2011-01-12  9:41     ` Andreas Schwab
2011-01-12  9:56       ` Štěpán Němec
2011-03-09 23:18         ` Glenn Morris
2011-03-10  2:10           ` Stefan Monnier
2011-01-12 14:53   ` Stefan Monnier
2011-01-13  3:04     ` Richard Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87sjwy4hnm.fsf@gmail.com \
    --to=stepnem@gmail.com \
    --cc=7825@debbugs.gnu.org \
    --cc=monnier@IRO.UMontreal.CA \
    --cc=rms@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).