unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: "David Vanderschel" <DJV1@Austin.RR.com>
Subject: Re: edebug question - context of calling function
Date: Fri, 24 Oct 2003 13:41:47 -0500	[thread overview]
Message-ID: <uvmdneNQkYn47wSiRTvUqA@texas.net> (raw)
In-Reply-To: jwvu15yskro.fsf-monnier+gnu.emacs.help@vor.iro.umontreal.ca

"Stefan Monnier" <monnier@iro.umontreal.ca> wrote in message
news:<jwvu15yskro.fsf-monnier+gnu.emacs.help@vor.iro.umontreal.ca>...
> > I am familiar with other debuggers which allow you to
> > proceed up and down the stack of call frames, looking
> > at context (including location of the call in each
> > calling program) in a whole hierarchy of calling
> > functions.  I just expected such capability in edebug
> > and was trying to find out how to exercise it.
> > However, I am willing to accept that the capability is
> > not there.

> I don't think edebug has that feature, although I can't think of
> any particular reason why not (as long as the calling function
> you want to look at is instrumented, of course).

I could not think of any such reason either, which is
why I was looking for the functionality.  (I was
instrumenting the calling function.)

> If your calling function is byte-compiled, you can
> improve things a little by using the
> non-byte-compiled version in which case the
> backtrace will give you more than just the calling
> function's name and arguments.  It won't give you
> line numbers, but you should/might be able to
> recognize the calling context enough to figure out
> which of the calls is currently active.

If the calling function has been instrumented, the
point about byte-compiling is moot.  The particular
function which intiated this quest is one in which I
made rather heavy use of CL macros.  The result is
fairly effective obfuscation of any recognizable
context.

I just discovered something which does help:  After
the source breakpoint is hit, I can set a breakpoint
at the end of the called function (or step down to
there).  Then I can step through the return to the
calling function and I _do_ wind up in the context of
the calling program.  So this approach can be used
whenever it is possible to make a return from the
function which recognizes the problem - a possibility
which does exist in the situation which concerned me.
I'd still prefer to be able to get there without executing
the remainder of the called function.

Regards,
  David V.

  reply	other threads:[~2003-10-24 18:41 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-10-15  7:18 edebug question - context of calling function David Vanderschel
     [not found] ` <mailman.1841.1066353965.21628.help-gnu-emacs@gnu.org>
2003-10-17  2:19   ` David Vanderschel
2003-10-18 19:59     ` jan
     [not found]     ` <mailman.1915.1066445382.21628.help-gnu-emacs@gnu.org>
2003-10-24 12:16       ` David Vanderschel
2003-10-24 15:51         ` Stefan Monnier
2003-10-24 18:41           ` David Vanderschel [this message]
2003-10-26  3:13         ` jan
     [not found]         ` <mailman.2431.1067076191.21628.help-gnu-emacs@gnu.org>
2003-10-30  3:38           ` David Vanderschel
2003-10-17 18:35 ` jan

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=uvmdneNQkYn47wSiRTvUqA@texas.net \
    --to=djv1@austin.rr.com \
    /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.
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).