unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#4519: 23.1.50; GDB MI problems: mi_cmd_stack_info_frame: No arguments required
@ 2009-09-22 14:38 Michael Welsh Duggan
  2009-09-23 10:54 ` Nick Roberts
  0 siblings, 1 reply; 4+ messages in thread
From: Michael Welsh Duggan @ 2009-09-22 14:38 UTC (permalink / raw)
  To: emacs-pretest-bug

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

When running gdb via M-x gdb on some code of mine, I end up in a state
where it becomes no longer responsive to 'C-c C-s' or 'C-c C-n'
commands.

More specifically, I started running gdb by typing M-x gdb.  Arguments
were:
gdb -i=mi /home/mwd/bin/rwcut 

From here I typed "start --python-file /tmp/foo.py --help", and then
stepped through my code using 'C-c C-s' and 'C-c C-n'.  At one point,
after 'C-c C-n', where a library was being dynamically loaded, I get the
following output in my *gdb-rwcut* buffer:

[Thread debugging using libthread_db enabled]
[New Thread 0xb7f786c0 (LWP 5633)]
(gdb) mi_cmd_stack_info_frame: No arguments required

At this point, gud no longer syncs with gdb (does not follow along in
source files).  

The debug log below contains information up to this point, plus typing
'C-c C-n' once beyond the point where the above erroneous condition
begins.

gdb information:
GNU gdb Fedora (6.8-37.el5)

Here is the debug log for gdb-mi:

((recv . "&\"mi_cmd_stack_info_frame: No arguments required\\n\"\n69^error,msg=\"mi_cmd_stack_info_frame: No arguments required\"\n(gdb) \n70^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "70-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "69-stack-info-frame --thread 1" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"1\",frame={addr=\"0x0804a1a5\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"351\"}\n(gdb) \n68^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "68-thread-info --thread 1"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-step 1\n")
 (recv . "&\"mi_cmd_stack_info_frame: No arguments required\\n\"\n66^error,msg=\"mi_cmd_stack_info_frame: No arguments required\"\n(gdb) \n67^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "67-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "66-stack-info-frame --thread 1" gdb-frame-handler)
 (recv . "~\"[New Thread 0xb7fa06c0 (LWP 5570)]\\n\"\n*stopped,reason=\"end-stepping-range\",thread-id=\"1\",frame={addr=\"0x0804a193\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"346\"}\n(gdb) \n65^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (recv . "~\"[Thread debugging using libthread_db enabled]\\n\"\n")
 (send-item "65-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "63^done,frame={level=\"0\",addr=\"0x0804a171\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"347\"}\n(gdb) \n64^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "64-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "63-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a171\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"347\"}\n(gdb) \n62^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "62-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "60^done,frame={level=\"0\",addr=\"0x0804a193\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"346\"}\n(gdb) \n61^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "61-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "60-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a193\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"346\"}\n(gdb) \n59^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "59-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "57^done,frame={level=\"0\",addr=\"0x0804a171\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"347\"}\n(gdb) \n58^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "58-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "57-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a171\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"347\"}\n(gdb) \n56^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "56-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "54^done,frame={level=\"0\",addr=\"0x0804a193\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"346\"}\n(gdb) \n55^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "55-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "54-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a193\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"346\"}\n(gdb) \n53^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "53-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "51^done,frame={level=\"0\",addr=\"0x0804a171\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"347\"}\n(gdb) \n52^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "52-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "51-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a171\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"347\"}\n(gdb) \n50^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "50-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "48^done,frame={level=\"0\",addr=\"0x0804a193\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"346\"}\n(gdb) \n49^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "49-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "48-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a193\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"346\"}\n(gdb) \n47^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "47-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "45^done,frame={level=\"0\",addr=\"0x0804a171\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"347\"}\n(gdb) \n46^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "46-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "45-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a171\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"347\"}\n(gdb) \n44^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "44-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "42^done,frame={level=\"0\",addr=\"0x0804a168\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"346\"}\n(gdb) \n43^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "43-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "42-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a168\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"346\"}\n(gdb) \n41^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "41-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "39^done,frame={level=\"0\",addr=\"0x0804a110\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"337\"}\n(gdb) \n40^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "40-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "39-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a110\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"337\"}\n(gdb) \n38^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "38-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "36^done,frame={level=\"0\",addr=\"0x0804a0e9\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"334\"}\n(gdb) \n37^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "37-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "36-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a0e9\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"334\"}\n(gdb) \n35^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "35-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "33^done,frame={level=\"0\",addr=\"0x0804a0d5\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"331\"}\n(gdb) \n34^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "34-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "33-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a0d5\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"331\"}\n(gdb) \n32^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "32-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "(gdb) \n29^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n30^done,frame={level=\"0\",addr=\"0x0804a0cb\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"328\"}\n(gdb) \n31^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "31-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "30-stack-info-frame" gdb-frame-handler)
 (send-item "29-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a0cb\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"328\"}\n")
 (mi-send . "-exec-next 1\n")
 (recv . "27^done,frame={level=\"0\",addr=\"0x0804a0c4\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"327\"}\n(gdb) \n28^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "28-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "27-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a0c4\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"327\"}\n(gdb) \n26^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "26-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "24^done,frame={level=\"0\",addr=\"0x0804a0ba\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"326\"}\n(gdb) \n25^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "25-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "24-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a0ba\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"326\"}\n(gdb) \n23^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "23-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "21^done,frame={level=\"0\",addr=\"0x0804a0ae\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"323\"}\n(gdb) \n22^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "22-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "21-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a0ae\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"323\"}\n(gdb) \n20^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "20-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-next 1\n")
 (recv . "18^done,frame={level=\"0\",addr=\"0x0804a0a1\",func=\"appSetup\",file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"322\"}\n(gdb) \n19^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "19-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "18-stack-info-frame" gdb-frame-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x0804a0a1\",func=\"appSetup\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\",line=\"322\"}\n(gdb) \n17^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "17-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-step 1\n")
 (recv . "14^done,register-names=[\"eax\",\"eax\"]\n(gdb) \n15^done,frame={level=\"0\",addr=\"0x08049d7c\",func=\"main\",file=\"rwcut.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcut.c\",line=\"243\"}\n(gdb) \n16^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "16-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "15-stack-info-frame" gdb-frame-handler)
 (send-item "14-data-list-register-names --thread 0" gdb-register-names-handler)
 (recv . "*stopped,reason=\"end-stepping-range\",thread-id=\"0\",frame={addr=\"0x08049d7c\",func=\"main\",args=[{name=\"argc\",value=\"4\"},{name=\"argv\",value=\"0xbf91c624\"}],file=\"rwcut.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcut.c\",line=\"243\"}\n(gdb) \n13^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n")
 (send-item "13-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (recv . "^running\n(gdb) \n")
 (mi-send . "-exec-step 1\n")
 (recv . "10^done,frame={level=\"0\",addr=\"0x08049d75\",func=\"main\",file=\"rwcut.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcut.c\",line=\"240\"}\n(gdb) \n11^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n12^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "12-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "11-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (send-item "10-stack-info-frame" gdb-frame-handler)
 (recv . "~\"240\\t    int rv = 0;\\n\"\n^done\n(gdb) \n")
 (recv . "~\"main (argc=4, argv=0xbf91c624) at rwcut.c:240\\n\"\n")
 (recv . "~\"Breakpoint 1 at 0x8049d75: file rwcut.c, line 240.\\n\"\n~\"Starting program: /home/mwd/bin/rwcut --python-file /tmp/foo.py --help\\n\"\n")
 (mi-send .
          #("start --python-file /tmp/foo.py --help\n" 0 38
            (fontified t)))
 (recv . "~\"GNU gdb Fedora (6.8-37.el5)\\n\"\n~\"Copyright (C) 2008 Free Software Foundation, Inc.\\n\"\n~\"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\\n\"\n~\"This is free software: you are free to change and redistribute it.\\n\"\n~\"There is NO WARRANTY, to the extent permitted by law.  Type \\\"show copying\\\"\\n\"\n~\"and \\\"show warranty\\\" for details.\\n\"\n~\"This GDB was configured as \\\"i386-redhat-linux-gnu\\\"...\\n\"\n(gdb) \n1^done\n(gdb) \n2^done\n(gdb) \n&\"No symbol \\\"non\\\" in current context.\\n\"\n3^error,msg=\"No symbol \\\"non\\\" in current context.\"\n(gdb) \n4^done,files=[{file=\"rwcutsetup.c\"},{file=\"rwcutsetup.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcutsetup.c\"},{file=\"rwcut.c\"},{file=\"rwcut.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcut.c\"}]\n(gdb) \n5^done,line=\"231\",file=\"rwcut.c\",fullname=\"/afs/cert.org/usr/mwd/projects/svn/netsa/trunk/silk/src/rwcut/rwcut.c\",macro-info=\"0\"\n(gdb) \n6^done,value=\"(gdb) \"\n(gdb) \n&\"No registers.\\n\"\n7^error,msg=\"No registers.\"\n(gdb) \n8^error,msg=\"Undefined mi command: thread-info (missing implementation)\"\n(gdb) \n9^done,BreakpointTable={nr_rows=\"0\",nr_cols=\"6\",hdr=[{width=\"7\",alignment=\"-1\",col_name=\"number\",colhdr=\"Num\"},{width=\"14\",alignment=\"-1\",col_name=\"type\",colhdr=\"Type\"},{width=\"4\",alignment=\"-1\",col_name=\"disp\",colhdr=\"Disp\"},{width=\"3\",alignment=\"-1\",col_name=\"enabled\",colhdr=\"Enb\"},{width=\"10\",alignment=\"-1\",col_name=\"addr\",colhdr=\"Address\"},{width=\"40\",alignment=\"2\",col_name=\"what\",colhdr=\"What\"}],body=[]}\n(gdb) \n")
 (send-item "9-break-list"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *breakpoints of rwcut*>
                                   (apply 'gdb-breakpoints-list-handler args))))
 (send-item "8-thread-info"
            (lambda
              (&rest args)
              (with-current-buffer #<buffer *threads of rwcut*>
                                   (apply 'gdb-thread-list-handler args))))
 (send-item "7-stack-info-frame" gdb-frame-handler)
 (send-item "6-gdb-show prompt" gdb-get-prompt)
 (send-item "5-file-list-exec-source-file" gdb-get-source-file)
 (send-item "4-file-list-exec-source-files" gdb-get-source-file-list)
 (send-item "3-gdb-set non-stop 1" gdb-non-stop-handler)
 (send-item "2-gdb-set height 0" ignore)
 (send-item "1-inferior-tty-set /dev/pts/2" ignore))

In GNU Emacs 23.1.50.1 (i686-pc-linux-gnu, GTK+ Version 2.10.4)
 of 2009-09-22 on maru.green.cert.org
Windowing system distributor `The X.Org Foundation', version 11.0.70101000
configured using `configure  '--without-toolkit-scroll-bars' '--prefix=/home/mwd' '--without-gif''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=none
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Outline

Minor modes in effect:
  goto-address-mode: t
  flyspell-mode: t
  shell-dirtrack-mode: t
  display-time-mode: t
  diff-auto-refine-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  view-mode: t

Recent input:
C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p C-p 
C-p C-p C-p <escape> < C-s d e b u g - l o C-n C-n 
C-n C-n <switch-frame> C-h v g d b - d e <tab> b <tab> 
<return> <switch-frame> C-s g d b - d e b u g - l o 
g C-s C-s C-a M-x s e t - v a <tab> <return> g d b 
- d e b <tab> <M-backspace> <M-backspace> <M-backspace> 
e n <tab> <return> t <return> <switch-frame> C-x o 
C-x k y e s <return> M-x g d b <return> <return> s 
t a r t SPC / <backspace> - - p y t h o n - f i l e 
SPC / h o m e / m w d / s b i n <M-backspace> <M-backspace> 
<M-backspace> t m p / p y t h o n . p y <M-backspace> 
<M-backspace> f o o . p y SPC - - h e l p <return> 
C-c C-s C-c C-s C-c C-n C-c C-n C-c C-n C-c C-n C-c 
C-n C-c C-n C-c C-n C-c C-n C-c C-n C-c C-n C-c C-n 
C-c C-n C-c C-n C-c C-n C-c C-n C-c C-n <switch-frame> 
C-h v g d b - d e b <tab> <return> C-n C-n C-n C-n 
C-n C-x o C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-v 
C-v C-v C-v C-v C-v C-v C-v C-v C-v C-v C-v C-v C-v 
C-v C-v C-v C-v C-x o C-p C-x o C-n C-n C-n C-n C-n 
C-n C-n C-M-b <switch-frame> C-x C-f C-g C-g C-h P 
q C-h C-p C-x 1 C-s g d b C-s C-s C-s C-a M-x r e p 
o r t - e m a <tab> <return>

Recent messages:
Switched to thread 0
Command: -exec-next 1
Switched to thread 0
Command: -exec-next 1
Switched to thread 1
Type C-x 1 to delete the help window, C-M-v to scroll help.
Don't touch it!  It's the History Eraser Button, you fool! [2 times]
RET = select, <mouse-2> = select, d = to finder directory, q = quit, ? = help
View mode: type C-h for help, h for commands, M-x View-quit to quit.
Mark saved where search started

Load-path shadows:
/afs/cert.org/usr/mwd/src/elisp/nnir hides /home/mwd/share/emacs/23.1.50/lisp/gnus/nnir

-- 
Michael Welsh Duggan
(mwd@cert.org)





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#4519: 23.1.50; GDB MI problems: mi_cmd_stack_info_frame: No arguments required
  2009-09-22 14:38 bug#4519: 23.1.50; GDB MI problems: mi_cmd_stack_info_frame: No arguments required Michael Welsh Duggan
@ 2009-09-23 10:54 ` Nick Roberts
  2009-09-23 16:45   ` Michael Welsh Duggan
  0 siblings, 1 reply; 4+ messages in thread
From: Nick Roberts @ 2009-09-23 10:54 UTC (permalink / raw)
  To: Michael Welsh Duggan, 4519; +Cc: emacs-pretest-bug

Michael Welsh Duggan writes:
 > Please describe exactly what actions triggered the bug
 > and the precise symptoms of the bug:
 > 
 > When running gdb via M-x gdb on some code of mine, I end up in a state
 > where it becomes no longer responsive to 'C-c C-s' or 'C-c C-n'
 > commands.
 > 
 > More specifically, I started running gdb by typing M-x gdb.  Arguments
 > were:
 > gdb -i=mi /home/mwd/bin/rwcut 
 > 
 > >From here I typed "start --python-file /tmp/foo.py --help", and then
 > stepped through my code using 'C-c C-s' and 'C-c C-n'.  At one point,
 > after 'C-c C-n', where a library was being dynamically loaded, I get the
 > following output in my *gdb-rwcut* buffer:
 > 
 > [Thread debugging using libthread_db enabled]
 > [New Thread 0xb7f786c0 (LWP 5633)]
 > (gdb) mi_cmd_stack_info_frame: No arguments required

Does the patch below fix the immediate problem?

You appear to be debugging a multi-threaded program with GDB 6.8.  The thread
buffer won't work in this case as it uses the MI -thread-info command which is
part of GDB 7.0.  This is due to be released in the next week or so.  Emacs
23.1 probably works better with GDB 6.8, at least for multi-threaded
applications.

-- 
Nick                                           http://users.snap.net.nz/~nickrob


*** gdb-mi.el.~1.49~	2009-09-18 15:10:58.000000000 +1200
--- gdb-mi.el	2009-09-23 22:53:36.000000000 +1200
*************** Emacs can't find.")
*** 218,223 ****
--- 218,224 ----
  (defvar gdb-source-window nil)
  (defvar gdb-inferior-status nil)
  (defvar gdb-continuation nil)
+ (defvar gdb-version nil)
  (defvar gdb-filter-output nil
    "Message to be shown in GUD console.
  
*************** If NOALL is t, always add --thread optio
*** 571,579 ****
  When `gdb-non-stop' is nil, return COMMAND unchanged."
    (if gdb-non-stop
        (if (and gdb-gud-control-all-threads
!                (not noall))
            (concat command " --all ")
!         (gdb-current-context-command command t))
      command))
  
  (defmacro gdb-gud-context-call (cmd1 &optional cmd2 noall noarg)
--- 572,581 ----
  When `gdb-non-stop' is nil, return COMMAND unchanged."
    (if gdb-non-stop
        (if (and gdb-gud-control-all-threads
!                (not noall)
! 	       (string-equal gdb-version "7.0+"))
            (concat command " --all ")
!         (gdb-current-context-command command))
      command))
  
  (defmacro gdb-gud-context-call (cmd1 &optional cmd2 noall noarg)
*************** detailed description of this mode.
*** 820,826 ****
    (if (re-search-forward "No symbol" nil t)
        (progn
  	(message "This version of GDB doesn't support non-stop mode.  Turning it off.")
! 	(setq gdb-non-stop nil))
      (gdb-input (list "-gdb-set target-async 1" 'ignore))
      (gdb-input (list "-enable-pretty-printing" 'ignore))))
  
--- 822,830 ----
    (if (re-search-forward "No symbol" nil t)
        (progn
  	(message "This version of GDB doesn't support non-stop mode.  Turning it off.")
! 	(setq gdb-non-stop nil)
! 	(setq gdb-version "pre-7.0"))
!     (setq gdb-version "7.0+")
      (gdb-input (list "-gdb-set target-async 1" 'ignore))
      (gdb-input (list "-enable-pretty-printing" 'ignore))))
  
*************** static char *magick[] = {
*** 1629,1644 ****
  		       (concat (car item) "\n")))
  
  ;; NOFRAME is used for gud execution control commands
! (defun gdb-current-context-command (command &optional noframe)
!   "Add --thread and --frame options to gdb COMMAND.
! 
! Option values are taken from `gdb-thread-number' and
! `gdb-frame-number'. If `gdb-thread-number' is nil, COMMAND is
! returned unchanged. If `gdb-frame-number' is nil of NOFRAME is t,
! then no --frame option is added."
!   ;; gdb-frame-number may be nil while gdb-thread-number is non-nil
!   ;; (when current thread is running)
!   (if gdb-thread-number
        (concat command " --thread " gdb-thread-number)
      command))
  
--- 1633,1642 ----
  		       (concat (car item) "\n")))
  
  ;; NOFRAME is used for gud execution control commands
! (defun gdb-current-context-command (command)
!   "Add --thread to gdb COMMAND when needed."
!   (if (and gdb-thread-number
! 	   (string-equal gdb-version "7.0+"))
        (concat command " --thread " gdb-thread-number)
      command))
  
*************** current thread and update GDB buffers."
*** 1920,1926 ****
      ;; thread
      (when (not gdb-register-names)
        (gdb-input
!        (list (concat "-data-list-register-names --thread " thread-id)
               'gdb-register-names-handler)))
  
  ;;; Don't set gud-last-frame here as it's currently done in gdb-frame-handler
--- 1918,1926 ----
      ;; thread
      (when (not gdb-register-names)
        (gdb-input
!        (list (concat "-data-list-register-names" 
! 		     (if (string-equal gdb-version "7.0+")
! 			 (concat" --thread " thread-id)))
               'gdb-register-names-handler)))
  
  ;;; Don't set gud-last-frame here as it's currently done in gdb-frame-handler
*************** corresponding to the mode line clicked."
*** 2565,2571 ****
   "Display GDB threads in a new frame.")
  
  (def-gdb-trigger-and-handler
!   gdb-invalidate-threads (gdb-current-context-command "-thread-info" gud-running)
    gdb-thread-list-handler gdb-thread-list-handler-custom
    '(start update update-threads))
  
--- 2565,2571 ----
   "Display GDB threads in a new frame.")
  
  (def-gdb-trigger-and-handler
!   gdb-invalidate-threads (gdb-current-context-command "-thread-info")
    gdb-thread-list-handler gdb-thread-list-handler-custom
    '(start update update-threads))
  





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#4519: 23.1.50; GDB MI problems: mi_cmd_stack_info_frame: No arguments required
  2009-09-23 10:54 ` Nick Roberts
@ 2009-09-23 16:45   ` Michael Welsh Duggan
  2009-09-23 23:25     ` Nick Roberts
  0 siblings, 1 reply; 4+ messages in thread
From: Michael Welsh Duggan @ 2009-09-23 16:45 UTC (permalink / raw)
  To: Nick Roberts; +Cc: 4519@emacsbugs.donarmstrong.com

Nick Roberts <nickrob@snap.net.nz> writes:

[...]

> Does the patch below fix the immediate problem?

It does.  Thank you.

-- 
Michael Welsh Duggan
(mwd@cert.org)





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#4519: 23.1.50; GDB MI problems: mi_cmd_stack_info_frame: No arguments required
  2009-09-23 16:45   ` Michael Welsh Duggan
@ 2009-09-23 23:25     ` Nick Roberts
  0 siblings, 0 replies; 4+ messages in thread
From: Nick Roberts @ 2009-09-23 23:25 UTC (permalink / raw)
  To: Michael Welsh Duggan; +Cc: 4519-done@emacsbugs.donarmstrong.com

 > > Does the patch below fix the immediate problem?
 > 
 > It does.  Thank you.

OK, I've committed this change and closed the report.  Please do report
any further bugs you see.  That way this mode will become much better than
the previous one.

Thanks,
Nick





^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2009-09-23 23:25 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-09-22 14:38 bug#4519: 23.1.50; GDB MI problems: mi_cmd_stack_info_frame: No arguments required Michael Welsh Duggan
2009-09-23 10:54 ` Nick Roberts
2009-09-23 16:45   ` Michael Welsh Duggan
2009-09-23 23:25     ` Nick Roberts

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).