Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Jason Molenda <jason-swarelist@molenda.com>
To: Nick Roberts <nickrob@snap.net.nz>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [PATCH] -stack-info-frames
Date: Sun, 19 Jun 2005 21:55:00 -0000	[thread overview]
Message-ID: <20050619145505.A24148@molenda.com> (raw)
In-Reply-To: <17076.42233.730605.834264@farnswood.snap.net.nz>; from nickrob@snap.net.nz on Sun, Jun 19, 2005 at 10:49:29AM +1200

On Sun, Jun 19, 2005 at 10:49:29AM +1200, Nick Roberts wrote:

>  > (gdb)
>  > -interpreter-exec console up
>  > ~"#1  0xb7d621ae in poll () from /lib/tls/i686/cmov/libc.so.6\n"
>  > ^done
>  > 


> Yes.  The same is true for the commands that control execution:
> 

> (gdb) 
> -interpreter-exec console next
> ~"50\t  int n1=7, n2=8, n3=9;\n"
> ^done
> (gdb) 
> 
> doesn't give the frontend any information.



For what it's worth, here's what these look like with the Apple gdb:

86-interpreter-exec console-quoted "up"
(gdb) 
~"#1  0x0003eaf0 in -[SKTGraphicView createGraphicOfClass:withEvent:] (self=0x341380, _cmd=0x3411c0, theClass=0xb2014, theEvent=0x3afc90) at /Developer/Examples/AppKit/Sketch/SKTGraphicView.m:345\n"
~"345\t    _creatingGraphic = [[theClass allocWithZone:[document zone]] init];\n"
86^done,MI_HOOK_RESULT=[HOOK_TYPE="frame_changed",frame="1"]



In the case of a 'next',

78-interpreter-exec console-quoted "next"
(gdb) 
^stepping
~"Current language:  auto; currently objective-c\n"
78^running
78*stopped,reason="end-stepping-range",thread-id="1"


These, and a handful of other notifications, are essential
if you have a GUI with a "gdb console" and you want to allow
the user to change program state in the console.


You'll notice that we use "console-quoted" for these.  We keep
the meaning of "console" to actually mean console and have a
separate interpreter for the MI-quoted console output.  We also
have the increidbly useful ability to switch the current
interpreter on the fly.  e.g.

(gdb) b main
Breakpoint 1 at 0x2d04: file a.c, line 3.
(gdb) r
Starting program: /private/tmp/a.out 
Reading symbols for shared libraries . done

Breakpoint 1, main () at a.c:3
3         puts ("");
(gdb) set interpreter  mi
-stack-select-frame 0
^done
(gdb) 
set interpreter console
&"set interpreter console\n"
Switching to interpreter "console".
^done
(gdb) 
fr 0
#0  main () at a.c:3
3         puts ("");
(gdb) 

So when we're working on an MI problem, we can navigate to the
area of interest via console, then switch to an MI interpreter
to work the problem.

>  > Meanwhile, we don't have this ability.  So maybe we do need
>  > -stack-info-frame, without an argument.
> 
> Yes, unless Apple's proposed merge will provide the necessary information.

Yeah, I would agree with Daniel that you shouldn't wait.  We're working
on the latest FSF -> Apple merge right now.  That will take a while
to get all the bugs shaken out, but even when it's finished we'll have
accomplished nothing for the desirable Apple -> FSF contributions --
it just sets the stage to make those easier to do.

J


  parent reply	other threads:[~2005-06-19 21:55 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-17 22:51 Nick Roberts
2005-06-17 23:01 ` Daniel Jacobowitz
2005-06-17 23:14   ` Daniel Jacobowitz
2005-06-18  1:28     ` Nick Roberts
2005-06-18  1:58       ` Daniel Jacobowitz
2005-06-18  3:16         ` Nick Roberts
2005-06-18  8:25         ` Eli Zaretskii
2005-06-18  8:51           ` Nick Roberts
2005-06-18 10:20             ` Eli Zaretskii
2005-06-18 15:51               ` Daniel Jacobowitz
2005-06-18 22:48               ` Nick Roberts
2005-06-18 15:57             ` Daniel Jacobowitz
2005-06-18 22:48               ` Nick Roberts
2005-06-18 23:20                 ` Daniel Jacobowitz
2005-06-19  3:39                   ` Nick Roberts
2005-06-19 14:56                     ` Daniel Jacobowitz
2005-06-19 18:33                       ` Eli Zaretskii
2005-06-19 22:31                         ` Nick Roberts
2005-06-20  3:41                           ` Eli Zaretskii
2005-06-19 22:31                       ` Nick Roberts
2005-06-20  0:01                         ` Daniel Jacobowitz
2005-06-20  1:24                           ` Nick Roberts
2005-06-20  1:31                             ` Daniel Jacobowitz
2005-06-20  3:43                         ` Eli Zaretskii
2005-06-20  5:03                           ` Nick Roberts
2005-06-20 13:51                             ` Daniel Jacobowitz
2005-06-20 21:48                               ` [PATCH] MI error messages Nick Roberts
2005-06-20 22:10                                 ` Andreas Schwab
2005-06-21  3:40                                 ` Eli Zaretskii
2005-06-21  8:50                                   ` Andreas Schwab
2005-06-21  9:40                                   ` Nick Roberts
2005-06-21 19:51                                     ` Eli Zaretskii
2005-06-21 21:43                                       ` Nick Roberts
2005-06-21 21:59                                         ` Jason Molenda
2005-06-22  3:32                                           ` Daniel Jacobowitz
2005-06-22  3:41                                             ` Jason Molenda
2005-06-22  3:46                                               ` Daniel Jacobowitz
2005-06-22  7:27                                             ` Nick Roberts
2005-06-23  3:48                                               ` Daniel Jacobowitz
2005-06-22 13:04                                           ` Bob Rossi
2005-06-21 22:01                                         ` Bob Rossi
2005-06-22 11:06                                         ` Nick Roberts
2005-06-22 11:24                                           ` Andreas Schwab
2005-06-22 19:19                                           ` Jason Molenda
2005-06-22 21:55                                             ` Nick Roberts
2005-06-19 21:55                 ` Jason Molenda [this message]
2005-06-19 22:12                   ` [PATCH] -stack-info-frames Daniel Jacobowitz
2005-06-17 23:11 ` Jason Molenda
2005-06-17 23:31   ` Nick Roberts

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

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

  git send-email \
    --in-reply-to=20050619145505.A24148@molenda.com \
    --to=jason-swarelist@molenda.com \
    --cc=gdb-patches@sources.redhat.com \
    --cc=nickrob@snap.net.nz \
    /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