From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13450 invoked by alias); 24 Mar 2005 20:49:57 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 11679 invoked from network); 24 Mar 2005 20:48:43 -0000 Received: from unknown (HELO wampa.office.slickedit.com) (65.210.24.21) by sourceware.org with SMTP; 24 Mar 2005 20:48:43 -0000 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Subject: RE: [RFC] fullname attribute for GDB/MI stack frames Date: Thu, 24 Mar 2005 20:49:00 -0000 Message-ID: X-MS-Has-Attach: X-MS-TNEF-Correlator: From: "Dennis Brueni" To: "Bob Rossi" Cc: , "Dennis Brueni" X-SW-Source: 2005-03/txt/msg00304.txt.bz2 > -----Original Message----- > From: Bob Rossi [mailto:bob@brasko.net]=20 > Sent: Wednesday, March 23, 2005 5:34 PM > To: Dennis Brueni > Cc: gdb-patches@sources.redhat.com > Subject: Re: [RFC] fullname attribute for GDB/MI stack frames >=20 >=20 > > The following patch fixes the code that reports stack=20 > frames to append=20 > > a "fullname" attribute to each stack frame, reporting the absolute=20 > > path name of the source file. This effects MI output mode only and=20 > > does not hurt performance. > >=20 > > Index: gdb/stack.c=20 > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > RCS file: /cvs/src/src/gdb/stack.c,v > >=20 > > $ diff -c -p -b stack.c-6.3 stack.c > > *** stack.c-6.3 Wed Mar 23 17:03:57 2005 > > --- stack.c Wed Mar 23 15:40:11 2005 > > *************** print_frame (struct frame_info *fi, > > *** 666,671 **** > > --- 666,679 ---- > > ui_out_text (uiout, " at "); > > annotate_frame_source_file (); > > ui_out_field_string (uiout, "file", sal.symtab->filename); > > + if (ui_out_is_mi_like_p(uiout)) { > > + if (!sal.symtab->fullname) { > > + source_full_path_of(sal.symtab->filename, > > &sal.symtab->fullname); > > + } > > + if (sal.symtab->fullname) { > > + ui_out_field_string (uiout, "fullname", > > sal.symtab->fullname); > > + } > > + } > > annotate_frame_source_file_end (); > > ui_out_text (uiout, ":"); > > annotate_frame_source_line (); >=20 > This is great, I've was eventually going to get to this.=20 > Although I'm not the maintainer, I have a few comments, >=20 > You should probably be using symtab_to_fullname instead of=20 > source_full_path_of. In fact, maybe source_full_path_of=20 > should be deprecated. symtab_to_fullname is used in mi/mi-cmd-file.c. >=20 > Also, there should be a corresponding testcase, that ensures the new=20 > field is working properly. >=20 > Thanks, > Bob Rossi >=20 Thanks for the excellent suggestions! Attached is a complete patch for the latest GDB development stream, including testsuite and docs. Hint, hint, it would be great to see this in 6.4! --Dennis Brueni dennis@slickedit.com Index: gdb/stack.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/stack.c,v retrieving revision 1.130 diff -c -p -b -r1.130 stack.c *** gdb/stack.c 28 Feb 2005 17:00:49 -0000 1.130 --- gdb/stack.c 24 Mar 2005 18:34:08 -0000 *************** print_frame (struct frame_info *fi,=20 *** 679,684 **** --- 679,692 ---- ui_out_text (uiout, " at "); annotate_frame_source_file (); ui_out_field_string (uiout, "file", sal.symtab->filename); + if (ui_out_is_mi_like_p(uiout)) { + if (!sal.symtab->fullname) { + symtab_to_fullname(sal.symtab); + } + if (sal.symtab->fullname) { + ui_out_field_string (uiout, "fullname", sal.symtab->fullname); + } + } annotate_frame_source_file_end (); ui_out_text (uiout, ":"); annotate_frame_source_line (); Index: gdb/doc/gdb.texinfo =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/doc/gdb.texinfo,v retrieving revision 1.233 diff -c -p -b -r1.233 gdb.texinfo *** gdb/doc/gdb.texinfo 10 Mar 2005 13:12:33 -0000 1.233 --- gdb/doc/gdb.texinfo 24 Mar 2005 18:34:13 -0000 *************** Setting a watchpoint on a variable in th *** 15894,15900 **** ^running ^done,reason=3D"watchpoint-trigger",wpt=3D@{number=3D"2",exp=3D"x"@}, value=3D@{old=3D"-268439212",new=3D"55"@}, ! frame=3D@{func=3D"main",args=3D[],file=3D"recursive2.c",line=3D"5"@} (@value{GDBP}) @end smallexample =20=20 --- 15894,15900 ---- ^running ^done,reason=3D"watchpoint-trigger",wpt=3D@{number=3D"2",exp=3D"x"@}, value=3D@{old=3D"-268439212",new=3D"55"@}, ! frame=3D@{func=3D"main",args=3D[],file=3D"recursive2.c",fullname=3D"/.../re= cursive 2.c",line=3D"5"@} (@value{GDBP}) @end smallexample =20=20 *************** for the watchpoint going out of scope. *** 15912,15925 **** ^done,reason=3D"watchpoint-trigger", wpt=3D@{number=3D"5",exp=3D"C"@},value=3D@{old=3D"-276895068",new=3D"3"@}, frame=3D@{func=3D"callee4",args=3D[], ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c",line=3D"13"@} (@value{GDBP}) -exec-continue ^running ^done,reason=3D"watchpoint-scope",wpnum=3D"5", frame=3D@{func=3D"callee3",args=3D[@{name=3D"strarg", value=3D"0x11940 \"A string argument.\""@}], ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c",line=3D"18"@} (@value{GDBP}) @end smallexample =20=20 --- 15912,15927 ---- ^done,reason=3D"watchpoint-trigger", wpt=3D@{number=3D"5",exp=3D"C"@},value=3D@{old=3D"-276895068",new=3D"3"@}, frame=3D@{func=3D"callee4",args=3D[], ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c", ! fullname=3D"/devo/gdb/testsuite/gdb.mi/basics.c",line=3D"13"@} (@value{GDBP}) -exec-continue ^running ^done,reason=3D"watchpoint-scope",wpnum=3D"5", frame=3D@{func=3D"callee3",args=3D[@{name=3D"strarg", value=3D"0x11940 \"A string argument.\""@}], ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c", ! fullname=3D"/devo/gdb/testsuite/gdb.mi/basics.c",line=3D"18"@} (@value{GDBP}) @end smallexample =20=20 *************** enabled=3D"y",addr=3D"",what=3D"C",times=3D"0"@} *** 15951,15957 **** ^done,reason=3D"watchpoint-trigger",wpt=3D@{number=3D"2",exp=3D"C"@}, value=3D@{old=3D"-276895068",new=3D"3"@}, frame=3D@{func=3D"callee4",args=3D[], ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c",line=3D"13"@} (@value{GDBP}) -break-list ^done,BreakpointTable=3D@{nr_rows=3D"2",nr_cols=3D"6", --- 15953,15960 ---- ^done,reason=3D"watchpoint-trigger",wpt=3D@{number=3D"2",exp=3D"C"@}, value=3D@{old=3D"-276895068",new=3D"3"@}, frame=3D@{func=3D"callee4",args=3D[], ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c", ! fullname=3D"/devo/gdb/testsuite/gdb.mi/basics.c",line=3D"13"@} (@value{GDBP}) -break-list ^done,BreakpointTable=3D@{nr_rows=3D"2",nr_cols=3D"6", *************** enabled=3D"y",addr=3D"",what=3D"C",times=3D"-5"@ *** 15972,15978 **** ^done,reason=3D"watchpoint-scope",wpnum=3D"2", frame=3D@{func=3D"callee3",args=3D[@{name=3D"strarg", value=3D"0x11940 \"A string argument.\""@}], ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c",line=3D"18"@} (@value{GDBP}) -break-list ^done,BreakpointTable=3D@{nr_rows=3D"1",nr_cols=3D"6", --- 15975,15982 ---- ^done,reason=3D"watchpoint-scope",wpnum=3D"2", frame=3D@{func=3D"callee3",args=3D[@{name=3D"strarg", value=3D"0x11940 \"A string argument.\""@}], ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c", ! fullname=3D"/devo/gdb/testsuite/gdb.mi/basics.c",line=3D"18"@} (@value{GDBP}) -break-list ^done,BreakpointTable=3D@{nr_rows=3D"1",nr_cols=3D"6", *************** On a PPC MBX board: *** 16207,16213 **** =20=20 (@value{GDBP}) *stopped,reason=3D"breakpoint-hit",bkptno=3D"1",frame=3D@{func=3D"main", ! args=3D[],file=3D"try.c",line=3D"5"@} (@value{GDBP}) -data-list-changed-registers ^done,changed-registers=3D["0","1","2","4","5","6","7","8","9", --- 16211,16217 ---- =20=20 (@value{GDBP}) *stopped,reason=3D"breakpoint-hit",bkptno=3D"1",frame=3D@{func=3D"main", ! args=3D[],file=3D"try.c",fullname=3D"/.../try.c",line=3D"5"@} (@value{GDBP}) -data-list-changed-registers ^done,changed-registers=3D["0","1","2","4","5","6","7","8","9", *************** The corresponding @value{GDBN} correspon *** 16814,16820 **** (@value{GDBP}) @@Hello world =20 *stopped,reason=3D"breakpoint-hit",bkptno=3D"2",frame=3D@{func=3D"foo",args= =3D[], ! file=3D"hello.c",line=3D"13"@} (@value{GDBP}) @end smallexample =20=20 --- 16818,16824 ---- (@value{GDBP}) @@Hello world =20 *stopped,reason=3D"breakpoint-hit",bkptno=3D"2",frame=3D@{func=3D"foo",args= =3D[], ! file=3D"hello.c",fullname=3D"/.../hello.c",line=3D"13"@} (@value{GDBP}) @end smallexample =20=20 *************** Function returning @code{void}. *** 16846,16852 **** (@value{GDBP}) @@hello from foo *stopped,reason=3D"function-finished",frame=3D@{func=3D"main",args=3D[], ! file=3D"hello.c",line=3D"7"@} (@value{GDBP}) @end smallexample =20=20 --- 16850,16856 ---- (@value{GDBP}) @@hello from foo *stopped,reason=3D"function-finished",frame=3D@{func=3D"main",args=3D[], ! file=3D"hello.c",fullname=3D"/.../hello.c",line=3D"7"@} (@value{GDBP}) @end smallexample =20=20 *************** value itself. *** 16860,16866 **** (@value{GDBP}) =20 *stopped,reason=3D"function-finished",frame=3D@{addr=3D"0x000107b0",func=3D= "foo" , args=3D[@{name=3D"a",value=3D"1"],@{name=3D"b",value=3D"9"@}@}, ! file=3D"recursive2.c",line=3D"14"@}, gdb-result-var=3D"$1",return-value=3D"0" (@value{GDBP}) @end smallexample --- 16864,16870 ---- (@value{GDBP}) =20 *stopped,reason=3D"function-finished",frame=3D@{addr=3D"0x000107b0",func=3D= "foo" , args=3D[@{name=3D"a",value=3D"1"],@{name=3D"b",value=3D"9"@}@}, ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}, gdb-result-var=3D"$1",return-value=3D"0" (@value{GDBP}) @end smallexample *************** The corresponding @value{GDBN} command i *** 16897,16903 **** 222^done (@value{GDBP}) 111*stopped,signal-name=3D"SIGINT",signal-meaning=3D"Interrupt", ! frame=3D@{addr=3D"0x00010140",func=3D"foo",args=3D[],file=3D"try.c",line= =3D"13"@} (@value{GDBP}) =20=20 (@value{GDBP}) --- 16901,16907 ---- 222^done (@value{GDBP}) 111*stopped,signal-name=3D"SIGINT",signal-meaning=3D"Interrupt", ! frame=3D@{addr=3D"0x00010140",func=3D"foo",args=3D[],file=3D"try.c",fullnam= e=3D/.../ try.c",line=3D"13"@} (@value{GDBP}) =20=20 (@value{GDBP}) *************** file=3D"../../../devo/gdb/testsuite/gdb.mi *** 16995,17001 **** (@value{GDBP}) 000*stopped,reason=3D"breakpoint-hit",bkptno=3D"1", frame=3D@{func=3D"callee4",args=3D[], ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c",line=3D"8"@} (@value{GDBP}) 205-break-delete 205^done --- 16999,17006 ---- (@value{GDBP}) 000*stopped,reason=3D"breakpoint-hit",bkptno=3D"1", frame=3D@{func=3D"callee4",args=3D[], ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c", ! fullname=3D"/devo/gdb/testsuite/gdb.mi/basics.c",line=3D"8"@} (@value{GDBP}) 205-break-delete 205^done *************** file=3D"../../../devo/gdb/testsuite/gdb.mi *** 17005,17010 **** --- 17010,17016 ---- args=3D[@{name=3D"strarg", value=3D"0x11940 \"A string argument.\""@}], file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c",line=3D"18"@} + fullname=3D"/devo/gdb/testsuite/gdb.mi/basics.c",line=3D"18"@} (@value{GDBP}) @end smallexample =20=20 *************** The corresponding @value{GDBN} command i *** 17037,17043 **** ^running (@value{GDBP}) *stopped,reason=3D"breakpoint-hit",bkptno=3D"1", ! frame=3D@{func=3D"main",args=3D[],file=3D"recursive2.c",line=3D"4"@} (@value{GDBP}) @end smallexample =20=20 --- 17043,17049 ---- ^running (@value{GDBP}) *stopped,reason=3D"breakpoint-hit",bkptno=3D"1", ! frame=3D@{func=3D"main",args=3D[],file=3D"recursive2.c",fullname=3D"/.../re= cursive 2.c",line=3D"4"@} (@value{GDBP}) @end smallexample =20=20 *************** Stepping into a function: *** 17090,17096 **** (@value{GDBP}) *stopped,reason=3D"end-stepping-range", frame=3D@{func=3D"foo",args=3D[@{name=3D"a",value=3D"10"@}, ! @{name=3D"b",value=3D"0"@}],file=3D"recursive2.c",line=3D"11"@} (@value{GDBP}) @end smallexample =20=20 --- 17096,17102 ---- (@value{GDBP}) *stopped,reason=3D"end-stepping-range", frame=3D@{func=3D"foo",args=3D[@{name=3D"a",value=3D"10"@}, ! @{name=3D"b",value=3D"0"@}],file=3D"recursive2.c",fullname=3D"/.../recursiv= e2.c" ,line=3D"11"@} (@value{GDBP}) @end smallexample =20=20 *************** The corresponding @value{GDBN} command i *** 17133,17146 **** =20=20 (@value{GDBP}) *stopped,reason=3D"end-stepping-range", ! frame=3D@{func=3D"foo",args=3D[],file=3D"try.c",line=3D"10"@} (@value{GDBP}) -exec-step-instruction ^running =20=20 (@value{GDBP}) *stopped,reason=3D"end-stepping-range", ! frame=3D@{addr=3D"0x000100f4",func=3D"foo",args=3D[],file=3D"try.c",line= =3D"10"@} (@value{GDBP}) @end smallexample =20=20 --- 17139,17152 ---- =20=20 (@value{GDBP}) *stopped,reason=3D"end-stepping-range", ! frame=3D@{func=3D"foo",args=3D[],file=3D"try.c",fullname=3D"/.../try.c",lin= e=3D"10"@ } (@value{GDBP}) -exec-step-instruction ^running =20=20 (@value{GDBP}) *stopped,reason=3D"end-stepping-range", ! frame=3D@{addr=3D"0x000100f4",func=3D"foo",args=3D[],file=3D"try.c",fullnam= e=3D"/... /try.c",line=3D"10"@} (@value{GDBP}) @end smallexample =20=20 *************** The corresponding @value{GDBN} command i *** 17172,17178 **** (@value{GDBP}) x =3D 55 *stopped,reason=3D"location-reached",frame=3D@{func=3D"main",args=3D[], ! file=3D"recursive2.c",line=3D"6"@} (@value{GDBP}) @end smallexample =20=20 --- 17178,17184 ---- (@value{GDBP}) x =3D 55 *stopped,reason=3D"location-reached",frame=3D@{func=3D"main",args=3D[], ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"6"@} (@value{GDBP}) @end smallexample =20=20 *************** functionality of @samp{-stack-list-argum *** 17672,17686 **** ^done, stack=3D[ frame=3D@{level=3D"0",addr=3D"0x00010734",func=3D"callee4", ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c",line=3D"8"@}, frame=3D@{level=3D"1",addr=3D"0x0001076c",func=3D"callee3", ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c",line=3D"17"@}, frame=3D@{level=3D"2",addr=3D"0x0001078c",func=3D"callee2", ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c",line=3D"22"@}, frame=3D@{level=3D"3",addr=3D"0x000107b4",func=3D"callee1", ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c",line=3D"27"@}, frame=3D@{level=3D"4",addr=3D"0x000107e0",func=3D"main", ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c",line=3D"32"@}] (@value{GDBP}) -stack-list-arguments 0 ^done, --- 17678,17697 ---- ^done, stack=3D[ frame=3D@{level=3D"0",addr=3D"0x00010734",func=3D"callee4", ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c", ! fullname=3D"/devo/gdb/testsuite/gdb.mi/basics.c",line=3D"8"@}, frame=3D@{level=3D"1",addr=3D"0x0001076c",func=3D"callee3", ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c", ! fullname=3D"/devo/gdb/testsuite/gdb.mi/basics.c",line=3D"17"@}, frame=3D@{level=3D"2",addr=3D"0x0001078c",func=3D"callee2", ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c", ! fullname=3D"/devo/gdb/testsuite/gdb.mi/basics.c",line=3D"22"@}, frame=3D@{level=3D"3",addr=3D"0x000107b4",func=3D"callee1", ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c", ! fullname=3D"/devo/gdb/testsuite/gdb.mi/basics.c",line=3D"27"@}, frame=3D@{level=3D"4",addr=3D"0x000107e0",func=3D"main", ! file=3D"../../../devo/gdb/testsuite/gdb.mi/basics.c", ! fullname=3D"/devo/gdb/testsuite/gdb.mi/basics.c",line=3D"32"@}] (@value{GDBP}) -stack-list-arguments 0 ^done, *************** Full stack backtrace: *** 17762,17790 **** -stack-list-frames ^done,stack=3D [frame=3D@{level=3D"0",addr=3D"0x0001076c",func=3D"foo", ! file=3D"recursive2.c",line=3D"11"@}, frame=3D@{level=3D"1",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}, frame=3D@{level=3D"2",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}, frame=3D@{level=3D"3",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}, frame=3D@{level=3D"4",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}, frame=3D@{level=3D"5",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}, frame=3D@{level=3D"6",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}, frame=3D@{level=3D"7",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}, frame=3D@{level=3D"8",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}, frame=3D@{level=3D"9",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}, frame=3D@{level=3D"10",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}, frame=3D@{level=3D"11",addr=3D"0x00010738",func=3D"main", ! file=3D"recursive2.c",line=3D"4"@}] (@value{GDBP}) @end smallexample =20=20 --- 17773,17801 ---- -stack-list-frames ^done,stack=3D [frame=3D@{level=3D"0",addr=3D"0x0001076c",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"11"@}, frame=3D@{level=3D"1",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}, frame=3D@{level=3D"2",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}, frame=3D@{level=3D"3",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}, frame=3D@{level=3D"4",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}, frame=3D@{level=3D"5",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}, frame=3D@{level=3D"6",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}, frame=3D@{level=3D"7",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}, frame=3D@{level=3D"8",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}, frame=3D@{level=3D"9",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}, frame=3D@{level=3D"10",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}, frame=3D@{level=3D"11",addr=3D"0x00010738",func=3D"main", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"4"@}] (@value{GDBP}) @end smallexample =20=20 *************** Show frames between @var{low_frame} and=20 *** 17795,17805 **** -stack-list-frames 3 5 ^done,stack=3D [frame=3D@{level=3D"3",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}, frame=3D@{level=3D"4",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}, frame=3D@{level=3D"5",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}] (@value{GDBP}) @end smallexample =20=20 --- 17806,17816 ---- -stack-list-frames 3 5 ^done,stack=3D [frame=3D@{level=3D"3",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}, frame=3D@{level=3D"4",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}, frame=3D@{level=3D"5",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}] (@value{GDBP}) @end smallexample =20=20 *************** Show a single frame: *** 17810,17816 **** -stack-list-frames 3 3 ^done,stack=3D [frame=3D@{level=3D"3",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",line=3D"14"@}] (@value{GDBP}) @end smallexample =20=20 --- 17821,17827 ---- -stack-list-frames 3 3 ^done,stack=3D [frame=3D@{level=3D"3",addr=3D"0x000107a4",func=3D"foo", ! file=3D"recursive2.c",fullname=3D"/.../recursive2.c",line=3D"14"@}] (@value{GDBP}) @end smallexample =20=20 Index: gdb/testsuite/gdb.mi/mi-cli.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi-cli.exp,v retrieving revision 1.3 diff -c -p -b -r1.3 mi-cli.exp *** gdb/testsuite/gdb.mi/mi-cli.exp 15 Aug 2004 10:15:58 -0000 1.3 --- gdb/testsuite/gdb.mi/mi-cli.exp 24 Mar 2005 18:34:14 -0000 *************** mi_gdb_test "-interpreter-exec console \ *** 100,106 **** =20=20 # # NOTE: cagney/2003-02-03: Not yet. # mi_gdb_test "-exec-continue" \ ! # {.*\*stopped,reason=3D"breakpoint-hit",.*func=3D"callee4".*file=3D".*basics= .c" ,line=3D"8"\}} \ # "-interpreter-exec console \"continue to callee4\"" send_gdb "999-exec-continue\n" gdb_expect { --- 100,106 ---- =20=20 # # NOTE: cagney/2003-02-03: Not yet. # mi_gdb_test "-exec-continue" \ ! # {.*\*stopped,reason=3D"breakpoint-hit",.*func=3D"callee4".*file=3D".*basics= .c" ,fullname=3D\".*basics.c\",line=3D"8"\}} \ # "-interpreter-exec console \"continue to callee4\"" send_gdb "999-exec-continue\n" gdb_expect { *************** mi_gdb_test "600-break-insert -t basics. *** 161,171 **** "-break-insert -t basics.c:\$line_main_hello" =20=20 # mi_gdb_test "-exec-continue" \ ! # {.*\*stopped.*,file=3D".*basics.c",line=3D"$line_main_hello"\}} \ # "-exec-continue to line \$line_main_hello" send_gdb "700-exec-continue\n" gdb_expect { ! -re "700\\^running\[\r\n\]+$mi_gdb_prompt.*\\*stopped.*,file=3D.*basics.c.,lin e=3D.$line_main_hello.*$mi_gdb_prompt$" { pass "-exec-continue to line \$line_main_hello" } timeout { --- 161,171 ---- "-break-insert -t basics.c:\$line_main_hello" =20=20 # mi_gdb_test "-exec-continue" \ ! # {.*\*stopped.*,file=3D".*basics.c",fullname=3D".*basics.c",line=3D"$line_ma= in_ hello"\}} \ # "-exec-continue to line \$line_main_hello" send_gdb "700-exec-continue\n" gdb_expect { ! -re "700\\^running\[\r\n\]+$mi_gdb_prompt.*\\*stopped.*,file=3D.*basics.c.,ful lname=3D.*basics.c.,line=3D.$line_main_hello.*$mi_gdb_prompt$" { pass "-exec-continue to line \$line_main_hello" } timeout { *************** gdb_expect { *** 175,185 **** =20=20 # NOTE: cagney/2003-02-03: Not yet. # mi_gdb_test "-exec-next" \ ! # {.*\*stopped,reason=3D"end-stepping-range",.*,file=3D".*basics.c",line=3D"$= lin e_main_return"\}} \ # "-exec-next to line \$line_main_return" send_gdb "800-exec-next\n" gdb_expect { ! -re "800\\^running\[\r\n\]+$mi_gdb_prompt.*\\*stopped,reason=3D.end-stepping-r ange.*,file=3D.*basics.c.,line=3D.$line_main_return.*$mi_gdb_prompt$" { pass "-exec-next to line \$line_main_return" } timeout { --- 175,185 ---- =20=20 # NOTE: cagney/2003-02-03: Not yet. # mi_gdb_test "-exec-next" \ ! # {.*\*stopped,reason=3D"end-stepping-range",.*,file=3D".*basics.c",fullname= =3D" .*basics.c",line=3D"$line_main_return"\}} \ # "-exec-next to line \$line_main_return" send_gdb "800-exec-next\n" gdb_expect { ! -re "800\\^running\[\r\n\]+$mi_gdb_prompt.*\\*stopped,reason=3D.end-stepping-r ange.*,file=3D.*basics.c.,fullname=3D.*basics.c.,line=3D.$line_main_return.= *$m i_gdb_prompt$" { pass "-exec-next to line \$line_main_return" } timeout { Index: gdb/testsuite/gdb.mi/mi-return.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi-return.exp,v retrieving revision 1.11 diff -c -p -b -r1.11 mi-return.exp *** gdb/testsuite/gdb.mi/mi-return.exp 15 Aug 2004 10:15:58 -0000 1.11 --- gdb/testsuite/gdb.mi/mi-return.exp 24 Mar 2005 18:34:14 -0000 *************** proc test_return_simple {} { *** 53,59 **** =20=20 send_gdb "111-exec-return\n" gdb_expect { ! -re "111\\^done,frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"callee3\",args= =3D\\\[ .*\\\],file=3D\".*basics.c\",line=3D\"$line_callee3_close_brace\"\}\r\n$mi_g db_prompt$" {pass "return from callee4 now"} -re ".*\r\n$mi_gdb_prompt$" { fail "return from callee4 now" } timeout { fail "return from callee4 now (timeout)" } --- 53,59 ---- =20=20 send_gdb "111-exec-return\n" gdb_expect { ! -re "111\\^done,frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"callee3\",args= =3D\\\[ .*\\\],file=3D\".*basics.c\",fullname=3D\".*basics.c\",line=3D\"$line_calle= e3_ close_brace\"\}\r\n$mi_gdb_prompt$" {pass "return from callee4 now"} -re ".*\r\n$mi_gdb_prompt$" { fail "return from callee4 now" } timeout { fail "return from callee4 now (timeout)" } Index: gdb/testsuite/gdb.mi/mi-stack.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi-stack.exp,v retrieving revision 1.14 diff -c -p -b -r1.14 mi-stack.exp *** gdb/testsuite/gdb.mi/mi-stack.exp 15 Aug 2004 10:15:58 -0000 1.14 --- gdb/testsuite/gdb.mi/mi-stack.exp 24 Mar 2005 18:34:14 -0000 *************** proc test_stack_frame_listing {} { *** 57,63 **** # -stack-list-frames 1 3 =20=20 mi_gdb_test "231-stack-list-frames" \ ! "231\\^done,stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ca= llee4\" ,file=3D\".*basics.c\",line=3D\"$line_callee4_body\"\},frame=3D\{level=3D\"= 1\",a ddr=3D\"$hex\",func=3D\"callee3\",.*\},frame=3D\{level=3D\"2\",addr=3D\"$he= x\",fun c=3D\"callee2\",.*\},frame=3D\{level=3D\"3\",addr=3D\"$hex\",func=3D\"calle= e1\",.* \},frame=3D\{level=3D\"4\",addr=3D\"$hex\",func=3D\"main\",.*\}\\\]" \ "stack frame listing" mi_gdb_test "232-stack-list-frames 1 1" \ =20 "232\\^done,stack=3D\\\[frame=3D\{level=3D\"1\",addr=3D\"$hex\",func=3D\"ca= llee3\" ,.*\}\\\]" \ --- 57,63 ---- # -stack-list-frames 1 3 =20=20 mi_gdb_test "231-stack-list-frames" \ ! "231\\^done,stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ca= llee4\" ,file=3D\".*basics.c\",fullname=3D\".*/basics.c\",line=3D\"$line_callee4_bo= dy\ "\},frame=3D\{level=3D\"1\",addr=3D\"$hex\",func=3D\"callee3\",.*\},frame= =3D\{leve l=3D\"2\",addr=3D\"$hex\",func=3D\"callee2\",.*\},frame=3D\{level=3D\"3\",a= ddr=3D\"$ hex\",func=3D\"callee1\",.*\},frame=3D\{level=3D\"4\",addr=3D\"$hex\",func= =3D\"mai n\",.*\}\\\]" \ "stack frame listing" mi_gdb_test "232-stack-list-frames 1 1" \ =20 "232\\^done,stack=3D\\\[frame=3D\{level=3D\"1\",addr=3D\"$hex\",func=3D\"ca= llee3\" ,.*\}\\\]" \ *************** set line_callee4_return_0 [gdb_get_line_ *** 161,167 **** # step until A, B, C, have some reasonable values. send_gdb "-exec-next 3\n" gdb_expect { ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"end-stepping-range\", thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"callee4\",args=3D= \\\[\\\ ],file=3D\".*basics.c\",line=3D\"$line_callee4_return_0\"\}\r\n$mi_gdb_promp t$" { pass "next's in callee4" } timeout { fail "next in callee4 (timeout)" } --- 161,167 ---- # step until A, B, C, have some reasonable values. send_gdb "-exec-next 3\n" gdb_expect { ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"end-stepping-range\", thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"callee4\",args=3D= \\\[\\\ ],file=3D\".*basics.c\",fullname=3D\".*/basics.c\",line=3D\"$line_callee4_r= etu rn_0\"\}\r\n$mi_gdb_prompt$" { pass "next's in callee4" } timeout { fail "next in callee4 (timeout)" } Index: gdb/testsuite/gdb.mi/mi-stepi.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi-stepi.exp,v retrieving revision 1.10 diff -c -p -b -r1.10 mi-stepi.exp *** gdb/testsuite/gdb.mi/mi-stepi.exp 15 Aug 2004 10:15:58 -0000 1.10 --- gdb/testsuite/gdb.mi/mi-stepi.exp 24 Mar 2005 18:34:14 -0000 *************** proc test_stepi_nexti {} { *** 53,59 **** =20=20 send_gdb "111-exec-step-instruction\n" gdb_expect { ! -re "111\\^running\r\n${mi_gdb_prompt}111\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[ \\\],file=3D\".*basics.c\",line=3D\"(\[0-9\]+)\"\}\r\n$mi_gdb_prompt$" { set line $expect_out(1,string) if { $line >=3D $line_main_body && $line <=3D $line_main_hello } { pass "step-instruction at main" --- 53,59 ---- =20=20 send_gdb "111-exec-step-instruction\n" gdb_expect { ! -re "111\\^running\r\n${mi_gdb_prompt}111\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[ \\\],file=3D\".*basics.c\",fullname=3D\".*basics.c\",line=3D\"(\[0-9\]+)\"\= }\r \n$mi_gdb_prompt$" { set line $expect_out(1,string) if { $line >=3D $line_main_body && $line <=3D $line_main_hello } { pass "step-instruction at main" *************** proc test_stepi_nexti {} { *** 67,73 **** } send_gdb "222-exec-next-instruction\n" gdb_expect { ! -re "222\\^running\r\n${mi_gdb_prompt}222\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[ \\\],file=3D\".*basics.c\",line=3D\"(\[0-9\]+)\"\}\r\n$mi_gdb_prompt$" { set line $expect_out(1,string) if { $line >=3D $line_main_body && $line <=3D $line_main_hello } { pass "next-instruction at main" --- 67,73 ---- } send_gdb "222-exec-next-instruction\n" gdb_expect { ! -re "222\\^running\r\n${mi_gdb_prompt}222\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[ \\\],file=3D\".*basics.c\",fullname=3D\".*basics.c\",line=3D\"(\[0-9\]+)\"\= }\r \n$mi_gdb_prompt$" { set line $expect_out(1,string) if { $line >=3D $line_main_body && $line <=3D $line_main_hello } { pass "next-instruction at main" *************** proc test_stepi_nexti {} { *** 81,87 **** } send_gdb "333-exec-next-instruction\n" gdb_expect { ! -re "333\\^running\r\n${mi_gdb_prompt}333\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[ \\\],file=3D\".*basics.c\",line=3D\"(\[0-9\]+)\"\}\r\n$mi_gdb_prompt$" { set line $expect_out(1,string) if { $line >=3D $line_main_body && $line <=3D $line_main_hello } { pass "next-instruction at main" --- 81,87 ---- } send_gdb "333-exec-next-instruction\n" gdb_expect { ! -re "333\\^running\r\n${mi_gdb_prompt}333\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[ \\\],file=3D\".*basics.c\",fullname=3D\".*basics.c\",line=3D\"(\[0-9\]+)\"\= }\r \n$mi_gdb_prompt$" { set line $expect_out(1,string) if { $line >=3D $line_main_body && $line <=3D $line_main_hello } { pass "next-instruction at main" Index: gdb/testsuite/gdb.mi/mi-syn-frame.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi-syn-frame.exp,v retrieving revision 1.2 diff -c -p -b -r1.2 mi-syn-frame.exp *** gdb/testsuite/gdb.mi/mi-syn-frame.exp 24 Feb 2003 20:15:47 -0000 1.2 --- gdb/testsuite/gdb.mi/mi-syn-frame.exp 24 Mar 2005 18:34:14 -0000 *************** gdb_expect { *** 69,75 **** } } =20=20 ! mi_gdb_test "404-stack-list-frames 0 0" "404\\^done,stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ma= in\",fi le=3D\".*mi-syn-frame.c\",line=3D\"$decimal\"\}.*\\\]" =20=20 =20=20 # --- 69,75 ---- } } =20=20 ! mi_gdb_test "404-stack-list-frames 0 0" "404\\^done,stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ma= in\",fi le=3D\".*mi-syn-frame.c\",fullname=3D\".*mi-syn-frame.c\",line=3D\"$decimal= \"\ }.*\\\]" =20=20 =20=20 # *************** mi_gdb_test "406-data-evaluate-expressio *** 83,89 **** # We should have both a signal handler and a call dummy frame # in this next output. =20=20 ! mi_gdb_test "407-stack-list-frames" "407\\^done,reason=3D\"breakpoint-hit\",bkptno=3D\"3\",thread-id=3D\"$decim= al\ ",frame=3D\{addr=3D\"$hex\",func=3D\"subroutine\",args=3D\\\[\{name=3D\"in\= ",value =3D\"$decimal\"\}\\\],file=3D\".*mi-syn-frame.c\",line=3D\"$decimal\"\},sta= ck=3D \\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"subroutine\",file=3D\"= .*mi-sy n-frame.c\",line=3D\"$decimal\"\},frame=3D\{level=3D\"1\",addr=3D\"$hex\",f= unc=3D\ "handler\",file=3D\".*mi-syn-frame.c\",line=3D\"$decimal\"\},frame=3D\{leve= l=3D\ "2\",addr=3D\"$hex\",func=3D\"\"\},.*frame=3D\{level=3D\"$decimal\",addr=3D\"$hex\",func=3D\"have_= a_ver y_merry_interrupt\",file=3D\".*mi-syn-frame.c\",line=3D\"$decimal\"\},frame= =3D \{level=3D\"$decimal\",addr=3D\"$hex\",func=3D\"\"\},frame=3D\{level=3D\"$decimal\",addr=3D\"$hex\",func=3D\"main\",fil= e=3D\". *mi-syn-frame.c\",line=3D\"$decimal\"\}.*\\\]" =20=20 =20=20 send_gdb "408-exec-continue\n" --- 83,89 ---- # We should have both a signal handler and a call dummy frame # in this next output. =20=20 ! mi_gdb_test "407-stack-list-frames" "407\\^done,reason=3D\"breakpoint-hit\",bkptno=3D\"3\",thread-id=3D\"$decim= al\ ",frame=3D\{addr=3D\"$hex\",func=3D\"subroutine\",args=3D\\\[\{name=3D\"in\= ",value =3D\"$decimal\"\}\\\],file=3D\".*mi-syn-frame.c\",fullname=3D\".*mi-syn-fra= me. c\",line=3D\"$decimal\"\},stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex= \",func =3D\"subroutine\",file=3D\".*mi-syn-frame.c\",fullname=3D\".*mi-syn-frame.c= \", line=3D\"$decimal\"\},frame=3D\{level=3D\"1\",addr=3D\"$hex\",func=3D\"hand= ler\",f ile=3D\".*mi-syn-frame.c\",fullname=3D\".*mi-syn-frame.c\",line=3D\"$decima= l\" \},frame=3D\{level=3D\"2\",addr=3D\"$hex\",func=3D\"\"\},.*frame=3D\{level=3D\"$decimal\",addr=3D\"$hex\",func=3D\"have_= a_ver y_merry_interrupt\",file=3D\".*mi-syn-frame.c\",fullname=3D\".*mi-syn-frame. c\",line=3D\"$decimal\"\},frame=3D\{level=3D\"$decimal\",addr=3D\"$hex\",fu= nc=3D\" \"\},frame=3D\{level=3D\"$decimal\",addr=3D\"$hex\",func=3D\"main\",fil= e=3D\". *mi-syn-frame.c\",fullname=3D\".*mi-syn-frame.c\",line=3D\"$decimal\"\}.*\\\ ]" =20=20 =20=20 send_gdb "408-exec-continue\n" *************** gdb_expect { *** 96,102 **** } } =20=20 ! mi_gdb_test "409-stack-list-frames 0 0" "409\\^done,stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ma= in\",fi le=3D\".*mi-syn-frame.c\",line=3D\"$decimal\"\}.*\\\]" =20=20 # # Call bar() by hand, which should get an exception while running. --- 96,102 ---- } } =20=20 ! mi_gdb_test "409-stack-list-frames 0 0" "409\\^done,stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ma= in\",fi le=3D\".*mi-syn-frame.c\",fullname=3D\".*mi-syn-frame.c\",line=3D\"$decimal= \"\ }.*\\\]" =20=20 # # Call bar() by hand, which should get an exception while running. *************** mi_gdb_test "409-stack-list-frames 0 0"=20 *** 104,110 **** =20=20 mi_gdb_test "410-data-evaluate-expression bar()" "hi in bar\[\r\n\]+\\&\"The program being debugged was signaled while in a function called from GDB.\\\\n\"\[\r\n\]+\\&\"GDB remains in the frame where the signal was received.\\\\n\"\[\r\n\]+\\&\"To change this behavior use \\\\\"set unwindonsignal on\\\\\"\\\\n\"\[\r\n\]+\\&\"Evaluation of the expression containing the function \\(bar\\) will be abandoned.\\\\n\"\[\r\n\]+410\\^error,msg=3D\"The program being debugged was signaled while in a function called from GDB.\\\\nGDB remains in the frame where the signal was received.\\\\nTo change this behavior use \\\\\"set unwindonsignal on\\\\\"\\\\nEvaluation of the expression containing the function \\(bar\\) will be abandoned.\"" "call inferior function which raises exception" =20=20 ! mi_gdb_test "411-stack-list-frames" "411\\^done,reason=3D\"signal-received\",signal-name=3D\".*\",signal-meaning =3D\".*\",thread-id=3D\"$decimal\",frame=3D\{addr=3D\"$hex\",func=3D\"bar\"= ,args=3D\ \\[\\\],file=3D\".*mi-syn-frame.c\",line=3D\"$decimal\"\},stack=3D\\\[frame= =3D\{ level=3D\"0\",addr=3D\"$hex\",func=3D\"bar\",file=3D\".*mi-syn-frame.c\",li= ne=3D\" $decimal\"},frame=3D\{level=3D\"1\",addr=3D\"$hex\",func=3D\"\"\},frame=3D\{level=3D\"2\",addr=3D\"$hex\",func=3D\"main\",file=3D\".= *mi-syn -frame.c\",line=3D\"$decimal\"}.*\\\]" "backtrace from inferior function at exception" =20=20 mi_gdb_exit =20=20 --- 104,110 ---- =20=20 mi_gdb_test "410-data-evaluate-expression bar()" "hi in bar\[\r\n\]+\\&\"The program being debugged was signaled while in a function called from GDB.\\\\n\"\[\r\n\]+\\&\"GDB remains in the frame where the signal was received.\\\\n\"\[\r\n\]+\\&\"To change this behavior use \\\\\"set unwindonsignal on\\\\\"\\\\n\"\[\r\n\]+\\&\"Evaluation of the expression containing the function \\(bar\\) will be abandoned.\\\\n\"\[\r\n\]+410\\^error,msg=3D\"The program being debugged was signaled while in a function called from GDB.\\\\nGDB remains in the frame where the signal was received.\\\\nTo change this behavior use \\\\\"set unwindonsignal on\\\\\"\\\\nEvaluation of the expression containing the function \\(bar\\) will be abandoned.\"" "call inferior function which raises exception" =20=20 ! mi_gdb_test "411-stack-list-frames" "411\\^done,reason=3D\"signal-received\",signal-name=3D\".*\",signal-meaning =3D\".*\",thread-id=3D\"$decimal\",frame=3D\{addr=3D\"$hex\",func=3D\"bar\"= ,args=3D\ \\[\\\],file=3D\".*mi-syn-frame.c\",fullname=3D\".*mi-syn-frame.c\",line=3D= \"$ decimal\"\},stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ba= r\",fil e=3D\".*mi-syn-frame.c\",fullname=3D\".*mi-syn-frame.c\",line=3D\"$decimal\= "}, frame=3D\{level=3D\"1\",addr=3D\"$hex\",func=3D\"\"\},frame=3D\{level=3D\"2\",addr=3D\"$hex\",func=3D\"main\",file=3D\".= *mi-syn -frame.c\",fullname=3D\".*mi-syn-frame.c\",line=3D\"$decimal\"}.*\\\]" "backtrace from inferior function at exception" =20=20 mi_gdb_exit =20=20 Index: gdb/testsuite/gdb.mi/mi-until.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi-until.exp,v retrieving revision 1.8 diff -c -p -b -r1.8 mi-until.exp *** gdb/testsuite/gdb.mi/mi-until.exp 9 Aug 2004 16:32:44 -0000 1.8 --- gdb/testsuite/gdb.mi/mi-until.exp 24 Mar 2005 18:34:14 -0000 *************** proc test_until {} { *** 78,84 **** =20=20 send_gdb "111-exec-until\n" gdb_expect { ! -re "111\\^running\r\n${mi_gdb_prompt}111\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"foo\",args= =3D\\\[\ \\],file=3D\".*until.c\",line=3D\"12\"\}\r\n$mi_gdb_prompt$" { pass "until after while loop" } timeout { --- 78,84 ---- =20=20 send_gdb "111-exec-until\n" gdb_expect { ! -re "111\\^running\r\n${mi_gdb_prompt}111\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"foo\",args= =3D\\\[\ \\],file=3D\".*until.c\",fullname=3D\".*until.c\",line=3D\"12\"\}\r\n$mi_gd= b_p rompt$" { pass "until after while loop" } timeout { *************** proc test_until {} { *** 88,94 **** =20=20 send_gdb "222-exec-until 15\n" gdb_expect { ! -re "222\\^running\r\n${mi_gdb_prompt}222\\*stopped,reason=3D\"location-reache d\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"foo\",args=3D= \\\[\\\ ],file=3D\".*until.c\",line=3D\"15\"\}\r\n$mi_gdb_prompt$" { pass "until line number" } timeout { --- 88,94 ---- =20=20 send_gdb "222-exec-until 15\n" gdb_expect { ! -re "222\\^running\r\n${mi_gdb_prompt}222\\*stopped,reason=3D\"location-reache d\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"foo\",args=3D= \\\[\\\ ],file=3D\".*until.c\",fullname=3D\".*until.c\",line=3D\"15\"\}\r\n$mi_gdb_= pro mpt$" { pass "until line number" } timeout { *************** proc test_until {} { *** 98,104 **** =20=20 send_gdb "333-exec-until until.c:17\n" gdb_expect { ! -re "333\\^running\r\n${mi_gdb_prompt}333\\*stopped,reason=3D\"location-reache d\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"foo\",args=3D= \\\[\\\ ],file=3D\".*until.c\",line=3D\"17\"\}\r\n$mi_gdb_prompt$" { pass "until line number:file" } timeout { --- 98,104 ---- =20=20 send_gdb "333-exec-until until.c:17\n" gdb_expect { ! -re "333\\^running\r\n${mi_gdb_prompt}333\\*stopped,reason=3D\"location-reache d\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"foo\",args=3D= \\\[\\\ ],file=3D\".*until.c\",fullname=3D\".*until.c\",line=3D\"17\"\}\r\n$mi_gdb_= pro mpt$" { pass "until line number:file" } timeout { *************** proc test_until {} { *** 110,116 **** =20=20 send_gdb "444-exec-until until.c:25\n" gdb_expect { ! -re "444\\^running\r\n${mi_gdb_prompt}444\\*stopped,reason=3D\"location-reache d\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[\\ \],file=3D\".*until.c\",line=3D\"24\"\}\r\n$mi_gdb_prompt$" { pass "until after current function" } timeout { --- 110,116 ---- =20=20 send_gdb "444-exec-until until.c:25\n" gdb_expect { ! -re "444\\^running\r\n${mi_gdb_prompt}444\\*stopped,reason=3D\"location-reache d\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[\\ \],file=3D\".*until.c\",fullname=3D\".*until.c\",line=3D\"24\"\}\r\n$mi_gdb= _pr ompt$" { pass "until after current function" } timeout { Index: gdb/testsuite/gdb.mi/mi-var-display.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi-var-display.exp,v retrieving revision 1.12 diff -c -p -b -r1.12 mi-var-display.exp *** gdb/testsuite/gdb.mi/mi-var-display.exp 17 Aug 2004 09:38:29 -0000 1.12 --- gdb/testsuite/gdb.mi/mi-var-display.exp 24 Mar 2005 18:34:14 -0000 *************** mi_gdb_test "200-break-insert $line_dct_ *** 48,54 **** mi_run_cmd # The running part has been checked already by mi_run_cmd gdb_expect { ! -re "\[\r\n\]*000\\*stopped,reason=3D\"breakpoint-hit\",bkptno=3D\"1\",thread-id =3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"do_children_tests\",args= =3D\\\[\\ \],file=3D\".*var-cmd.c\",line=3D\"$line_dct_close_brace\"\}\r\n$mi_gdb_prom pt$" { pass "run to do_children_tests" } -re ".*$mi_gdb_prompt$" {fail "run to do_children_tests (2)"} --- 48,54 ---- mi_run_cmd # The running part has been checked already by mi_run_cmd gdb_expect { ! -re "\[\r\n\]*000\\*stopped,reason=3D\"breakpoint-hit\",bkptno=3D\"1\",thread-id =3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"do_children_tests\",args= =3D\\\[\\ \],file=3D\".*var-cmd.c\",fullname=3D\".*var-cmd.c\",line=3D\"$line_dct_clo= se_ brace\"\}\r\n$mi_gdb_prompt$" { pass "run to do_children_tests" } -re ".*$mi_gdb_prompt$" {fail "run to do_children_tests (2)"} *************** mi_gdb_test "200-break-insert do_special *** 332,338 **** =20=20 send_gdb "-exec-continue\n" gdb_expect { ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"breakpoint-hit\",bkpt no=3D\"2\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"do_spe= cial_te sts\",args=3D\\\[\\\],file=3D\".*var-cmd.c\",line=3D\"$line_dst_a_1\"\}\r\n= $mi _gdb_prompt$" { pass "continue to do_special_tests" } timeout { --- 332,338 ---- =20=20 send_gdb "-exec-continue\n" gdb_expect { ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"breakpoint-hit\",bkpt no=3D\"2\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"do_spe= cial_te sts\",args=3D\\\[\\\],file=3D\".*var-cmd.c\",fullname=3D\".*var-cmd.c\",lin= e=3D\ "$line_dst_a_1\"\}\r\n$mi_gdb_prompt$" { pass "continue to do_special_tests" } timeout { *************** mi_gdb_test "200-break-insert incr_a" \ *** 592,601 **** "break-insert operation" send_gdb "-exec-continue\n" gdb_expect { ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"breakpoint-hit\",bkpt no=3D\"3\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"incr_a= \",args =3D\\\[\{name=3D\"a\",value=3D\"2\.*\"\}\\\],file=3D\".*var-cmd.c\",line=3D= \"$line _incr_a_b_a\"\}\r\n$mi_gdb_prompt$" { pass "continue to incr_a" } ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"breakpoint-hit\",bkpt no=3D\"3\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"incr_a= \",args =3D\\\[\{name=3D\"a\",value=3D\"\.*\"\}\\\],file=3D\".*var-cmd.c\",line=3D\= "([expr $line_incr_a_b_a - 2]|[expr $line_incr_a_b_a - 1]|$line_incr_a_b_a)\"\}\r\n$mi_gdb_prompt$" { fail "continue to incr_a (compiler debug info incorrect)" } -re "\\^running\r\n${mi_gdb_prompt}.*\r\n$mi_gdb_prompt$" { --- 592,601 ---- "break-insert operation" send_gdb "-exec-continue\n" gdb_expect { ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"breakpoint-hit\",bkpt no=3D\"3\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"incr_a= \",args =3D\\\[\{name=3D\"a\",value=3D\"2\.*\"\}\\\],file=3D\".*var-cmd.c\",fullnam= e=3D\". *var-cmd.c\",line=3D\"$line_incr_a_b_a\"\}\r\n$mi_gdb_prompt$" { pass "continue to incr_a" } ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"breakpoint-hit\",bkpt no=3D\"3\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"incr_a= \",args =3D\\\[\{name=3D\"a\",value=3D\"\.*\"\}\\\],file=3D\".*var-cmd.c\",fullname= =3D\".* var-cmd.c\",line=3D\"([expr $line_incr_a_b_a - 2]|[expr $line_incr_a_b_a - 1]|$line_incr_a_b_a)\"\}\r\n$mi_gdb_prompt$" { fail "continue to incr_a (compiler debug info incorrect)" } -re "\\^running\r\n${mi_gdb_prompt}.*\r\n$mi_gdb_prompt$" { Index: gdb/testsuite/gdb.mi/mi-watch.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi-watch.exp,v retrieving revision 1.11 diff -c -p -b -r1.11 mi-watch.exp *** gdb/testsuite/gdb.mi/mi-watch.exp 15 Aug 2004 10:15:58 -0000 1.11 --- gdb/testsuite/gdb.mi/mi-watch.exp 24 Mar 2005 18:34:14 -0000 *************** proc test_watchpoint_triggering {} { *** 139,145 **** gdb_expect { -re "222\\^running\r\n$mi_gdb_prompt" { gdb_expect { ! -re "222\\*stopped,reason=3D\"watchpoint-trigger\",wpt=3D\{number=3D\"2\",exp= =3D\"C\ "\},value=3D\{old=3D\".*\",new=3D\"3\"\},thread-id=3D\"\[01\]\",frame=3D\{a= ddr=3D\"$ hex\",func=3D\"callee4\",args=3D\\\[\\\],file=3D\".*basics.c\",line=3D\"$li= ne_ca llee4_return_0\"\}\r\n$mi_gdb_prompt$" { pass "watchpoint trigger" } -re ".*$mi_gdb_prompt$" {fail "watchpoint trigger (2)"} --- 139,145 ---- gdb_expect { -re "222\\^running\r\n$mi_gdb_prompt" { gdb_expect { ! -re "222\\*stopped,reason=3D\"watchpoint-trigger\",wpt=3D\{number=3D\"2\",exp= =3D\"C\ "\},value=3D\{old=3D\".*\",new=3D\"3\"\},thread-id=3D\"\[01\]\",frame=3D\{a= ddr=3D\"$ hex\",func=3D\"callee4\",args=3D\\\[\\\],file=3D\".*basics.c\",fullname=3D\= ".*ba sics.c\",line=3D\"$line_callee4_return_0\"\}\r\n$mi_gdb_prompt$" { pass "watchpoint trigger" } -re ".*$mi_gdb_prompt$" {fail "watchpoint trigger (2)"} *************** proc test_watchpoint_triggering {} { *** 154,160 **** gdb_expect { -re "223\\^running\r\n$mi_gdb_prompt" { gdb_expect { ! -re "\[\r\n\]*223\\*stopped,reason=3D\"watchpoint-scope\",wpnum=3D\"2\",thread-i d=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"callee3\",args=3D\\\[.*\\= \],file =3D\".*basics.c\",line=3D\"$line_callee3_close_brace\"\}\r\n$mi_gdb_prompt$" { pass "wp out of scope" } -re ".*$mi_gdb_prompt$" {fail "wp out of scope (2)"} --- 154,160 ---- gdb_expect { -re "223\\^running\r\n$mi_gdb_prompt" { gdb_expect { ! -re "\[\r\n\]*223\\*stopped,reason=3D\"watchpoint-scope\",wpnum=3D\"2\",thread-i d=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"callee3\",args=3D\\\[.*\\= \],file =3D\".*basics.c\",fullname=3D\".*basics.c\",line=3D\"$line_callee3_close_br= ace \"\}\r\n$mi_gdb_prompt$" { pass "wp out of scope" } -re ".*$mi_gdb_prompt$" {fail "wp out of scope (2)"} Index: gdb/testsuite/gdb.mi/mi2-cli.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi2-cli.exp,v retrieving revision 1.2 diff -c -p -b -r1.2 mi2-cli.exp *** gdb/testsuite/gdb.mi/mi2-cli.exp 15 Aug 2004 10:15:58 -0000 1.2 --- gdb/testsuite/gdb.mi/mi2-cli.exp 24 Mar 2005 18:34:14 -0000 *************** mi_gdb_test "600-break-insert -t basics. *** 161,171 **** "-break-insert -t basics.c:\$line_main_hello" =20=20 # mi_gdb_test "-exec-continue" \ ! # {.*\*stopped.*,file=3D".*basics.c",line=3D"$line_main_hello"\}} \ # "-exec-continue to line \$line_main_hello" send_gdb "700-exec-continue\n" gdb_expect { ! -re "700\\^running\[\r\n\]+$mi_gdb_prompt.*\\*stopped.*,file=3D.*basics.c.,lin e=3D.$line_main_hello.*$mi_gdb_prompt$" { pass "-exec-continue to line \$line_main_hello" } timeout { --- 161,171 ---- "-break-insert -t basics.c:\$line_main_hello" =20=20 # mi_gdb_test "-exec-continue" \ ! # {.*\*stopped.*,file=3D".*basics.c",fullname=3D".*basics.c",line=3D"$line_ma= in_ hello"\}} \ # "-exec-continue to line \$line_main_hello" send_gdb "700-exec-continue\n" gdb_expect { ! -re "700\\^running\[\r\n\]+$mi_gdb_prompt.*\\*stopped.*,file=3D.*basics.c.,ful lname=3D.*basics.c.,line=3D.$line_main_hello.*$mi_gdb_prompt$" { pass "-exec-continue to line \$line_main_hello" } timeout { *************** gdb_expect { *** 175,185 **** =20=20 # NOTE: cagney/2003-02-03: Not yet. # mi_gdb_test "-exec-next" \ ! # {.*\*stopped,reason=3D"end-stepping-range",.*,file=3D".*basics.c",line=3D"$= lin e_main_return"\}} \ # "-exec-next to line \$line_main_return" send_gdb "800-exec-next\n" gdb_expect { ! -re "800\\^running\[\r\n\]+$mi_gdb_prompt.*\\*stopped,reason=3D.end-stepping-r ange.*,file=3D.*basics.c.,line=3D.$line_main_return.*$mi_gdb_prompt$" { pass "-exec-next to line \$line_main_return" } timeout { --- 175,185 ---- =20=20 # NOTE: cagney/2003-02-03: Not yet. # mi_gdb_test "-exec-next" \ ! # {.*\*stopped,reason=3D"end-stepping-range",.*,file=3D".*basics.c",fullname= =3D" .*basics.c",line=3D"$line_main_return"\}} \ # "-exec-next to line \$line_main_return" send_gdb "800-exec-next\n" gdb_expect { ! -re "800\\^running\[\r\n\]+$mi_gdb_prompt.*\\*stopped,reason=3D.end-stepping-r ange.*,file=3D.*basics.c.,fullname=3D.*basics.c.,line=3D.$line_main_return.= *$m i_gdb_prompt$" { pass "-exec-next to line \$line_main_return" } timeout { Index: gdb/testsuite/gdb.mi/mi2-return.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi2-return.exp,v retrieving revision 1.3 diff -c -p -b -r1.3 mi2-return.exp *** gdb/testsuite/gdb.mi/mi2-return.exp 15 Aug 2004 10:15:58 -0000 1.3 --- gdb/testsuite/gdb.mi/mi2-return.exp 24 Mar 2005 18:34:14 -0000 *************** proc test_return_simple {} { *** 53,59 **** =20=20 send_gdb "111-exec-return\n" gdb_expect { ! -re "111\\^done,frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"callee3\",args= =3D\\\[ .*\\\],file=3D\".*basics.c\",line=3D\"$line_callee3_close_brace\"\}\r\n$mi_g db_prompt$" {pass "return from callee4 now"} -re ".*\r\n$mi_gdb_prompt$" { fail "return from callee4 now" } timeout { fail "return from callee4 now (timeout)" } --- 53,59 ---- =20=20 send_gdb "111-exec-return\n" gdb_expect { ! -re "111\\^done,frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"callee3\",args= =3D\\\[ .*\\\],file=3D\".*basics.c\",fullname=3D\".*basics.c\",line=3D\"$line_calle= e3_ close_brace\"\}\r\n$mi_gdb_prompt$" {pass "return from callee4 now"} -re ".*\r\n$mi_gdb_prompt$" { fail "return from callee4 now" } timeout { fail "return from callee4 now (timeout)" } Index: gdb/testsuite/gdb.mi/mi2-stack.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi2-stack.exp,v retrieving revision 1.3 diff -c -p -b -r1.3 mi2-stack.exp *** gdb/testsuite/gdb.mi/mi2-stack.exp 15 Aug 2004 10:15:58 -0000 1.3 --- gdb/testsuite/gdb.mi/mi2-stack.exp 24 Mar 2005 18:34:14 -0000 *************** proc test_stack_frame_listing {} { *** 57,63 **** # -stack-list-frames 1 3 =20=20 mi_gdb_test "231-stack-list-frames" \ ! "231\\^done,stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ca= llee4\" ,file=3D\".*basics.c\",line=3D\"$line_callee4_body\"\},frame=3D\{level=3D\"= 1\",a ddr=3D\"$hex\",func=3D\"callee3\",.*\},frame=3D\{level=3D\"2\",addr=3D\"$he= x\",fun c=3D\"callee2\",.*\},frame=3D\{level=3D\"3\",addr=3D\"$hex\",func=3D\"calle= e1\",.* \},frame=3D\{level=3D\"4\",addr=3D\"$hex\",func=3D\"main\",.*\}\\\]" \ "stack frame listing" mi_gdb_test "232-stack-list-frames 1 1" \ =20 "232\\^done,stack=3D\\\[frame=3D\{level=3D\"1\",addr=3D\"$hex\",func=3D\"ca= llee3\" ,.*\}\\\]" \ --- 57,63 ---- # -stack-list-frames 1 3 =20=20 mi_gdb_test "231-stack-list-frames" \ ! "231\\^done,stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ca= llee4\" ,file=3D\".*basics.c\",fullname=3D\".*basics.c\",line=3D\"$line_callee4_bod= y\" \},frame=3D\{level=3D\"1\",addr=3D\"$hex\",func=3D\"callee3\",.*\},frame=3D= \{level =3D\"2\",addr=3D\"$hex\",func=3D\"callee2\",.*\},frame=3D\{level=3D\"3\",ad= dr=3D\"$h ex\",func=3D\"callee1\",.*\},frame=3D\{level=3D\"4\",addr=3D\"$hex\",func= =3D\"main \",.*\}\\\]" \ "stack frame listing" mi_gdb_test "232-stack-list-frames 1 1" \ =20 "232\\^done,stack=3D\\\[frame=3D\{level=3D\"1\",addr=3D\"$hex\",func=3D\"ca= llee3\" ,.*\}\\\]" \ *************** set line_callee4_return_0 [gdb_get_line_ *** 160,166 **** # step until A, B, C, have some reasonable values. send_gdb "-exec-next 3\n" gdb_expect { ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"end-stepping-range\", thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"callee4\",args=3D= \\\[\\\ ],file=3D\".*basics.c\",line=3D\"$line_callee4_return_0\"\}\r\n$mi_gdb_promp t$" { pass "next's in callee4" } timeout { fail "next in callee4 (timeout)" } --- 160,166 ---- # step until A, B, C, have some reasonable values. send_gdb "-exec-next 3\n" gdb_expect { ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"end-stepping-range\", thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"callee4\",args=3D= \\\[\\\ ],file=3D\".*basics.c\",fullname=3D\".*basics.c\",line=3D\"$line_callee4_re= tur n_0\"\}\r\n$mi_gdb_prompt$" { pass "next's in callee4" } timeout { fail "next in callee4 (timeout)" } Index: gdb/testsuite/gdb.mi/mi2-stepi.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi2-stepi.exp,v retrieving revision 1.3 diff -c -p -b -r1.3 mi2-stepi.exp *** gdb/testsuite/gdb.mi/mi2-stepi.exp 15 Aug 2004 10:15:58 -0000 1.3 --- gdb/testsuite/gdb.mi/mi2-stepi.exp 24 Mar 2005 18:34:14 -0000 *************** proc test_stepi_nexti {} { *** 53,59 **** =20=20 send_gdb "111-exec-step-instruction\n" gdb_expect { ! -re "111\\^running\r\n${mi_gdb_prompt}111\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[ \\\],file=3D\".*basics.c\",line=3D\"(\[0-9\]+)\"\}\r\n$mi_gdb_prompt$" { set line $expect_out(1,string) if { $line >=3D $line_main_body && $line <=3D $line_main_hello } { pass "step-instruction at main" --- 53,59 ---- =20=20 send_gdb "111-exec-step-instruction\n" gdb_expect { ! -re "111\\^running\r\n${mi_gdb_prompt}111\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[ \\\],file=3D\".*basics.c\",fullname=3D\".*basics.c\",line=3D\"(\[0-9\]+)\"\= }\r \n$mi_gdb_prompt$" { set line $expect_out(1,string) if { $line >=3D $line_main_body && $line <=3D $line_main_hello } { pass "step-instruction at main" *************** proc test_stepi_nexti {} { *** 67,73 **** } send_gdb "222-exec-next-instruction\n" gdb_expect { ! -re "222\\^running\r\n${mi_gdb_prompt}222\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[ \\\],file=3D\".*basics.c\",line=3D\"(\[0-9\]+)\"\}\r\n$mi_gdb_prompt$" { set line $expect_out(1,string) if { $line >=3D $line_main_body && $line <=3D $line_main_hello } { pass "next-instruction at main" --- 67,73 ---- } send_gdb "222-exec-next-instruction\n" gdb_expect { ! -re "222\\^running\r\n${mi_gdb_prompt}222\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[ \\\],file=3D\".*basics.c\",fullname=3D\".*basics.c\",line=3D\"(\[0-9\]+)\"\= }\r \n$mi_gdb_prompt$" { set line $expect_out(1,string) if { $line >=3D $line_main_body && $line <=3D $line_main_hello } { pass "next-instruction at main" *************** proc test_stepi_nexti {} { *** 81,87 **** } send_gdb "333-exec-next-instruction\n" gdb_expect { ! -re "333\\^running\r\n${mi_gdb_prompt}333\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[ \\\],file=3D\".*basics.c\",line=3D\"(\[0-9\]+)\"\}\r\n$mi_gdb_prompt$" { set line $expect_out(1,string) if { $line >=3D $line_main_body && $line <=3D $line_main_hello } { pass "next-instruction at main" --- 81,87 ---- } send_gdb "333-exec-next-instruction\n" gdb_expect { ! -re "333\\^running\r\n${mi_gdb_prompt}333\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[ \\\],file=3D\".*basics.c\",fullname=3D\".*basics.c\",line=3D\"(\[0-9\]+)\"\= }\r \n$mi_gdb_prompt$" { set line $expect_out(1,string) if { $line >=3D $line_main_body && $line <=3D $line_main_hello } { pass "next-instruction at main" Index: gdb/testsuite/gdb.mi/mi2-syn-frame.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi2-syn-frame.exp,v retrieving revision 1.1 diff -c -p -b -r1.1 mi2-syn-frame.exp *** gdb/testsuite/gdb.mi/mi2-syn-frame.exp 7 Aug 2003 17:47:42 -0000 1.1 --- gdb/testsuite/gdb.mi/mi2-syn-frame.exp 24 Mar 2005 18:34:14 -0000 *************** gdb_expect { *** 69,75 **** } } =20=20 ! mi_gdb_test "404-stack-list-frames 0 0" "404\\^done,stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ma= in\",fi le=3D\".*mi-syn-frame.c\",line=3D\"$decimal\"\}.*\\\]" =20=20 =20=20 # --- 69,75 ---- } } =20=20 ! mi_gdb_test "404-stack-list-frames 0 0" "404\\^done,stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ma= in\",fi le=3D\".*mi-syn-frame.c\",fullname=3D\".*mi-syn-frame.c\",line=3D\"$decimal= \"\ }.*\\\]" =20=20 =20=20 # *************** gdb_expect { *** 96,102 **** } } =20=20 ! mi_gdb_test "409-stack-list-frames 0 0" "409\\^done,stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ma= in\",fi le=3D\".*mi-syn-frame.c\",line=3D\"$decimal\"\}.*\\\]" =20=20 # # Call bar() by hand, which should get an exception while running. --- 96,102 ---- } } =20=20 ! mi_gdb_test "409-stack-list-frames 0 0" "409\\^done,stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ma= in\",fi le=3D\".*mi-syn-frame.c\",fullname=3D\".*mi-syn-frame.c\",line=3D\"$decimal= \"\ }.*\\\]" =20=20 # # Call bar() by hand, which should get an exception while running. *************** mi_gdb_test "409-stack-list-frames 0 0"=20 *** 104,110 **** =20=20 mi_gdb_test "410-data-evaluate-expression bar()" "hi in bar\[\r\n\]+\\&\"The program being debugged was signaled while in a function called from GDB.\\\\n\"\[\r\n\]+\\&\"GDB remains in the frame where the signal was received.\\\\n\"\[\r\n\]+\\&\"To change this behavior use \\\\\"set unwindonsignal on\\\\\"\\\\n\"\[\r\n\]+\\&\"Evaluation of the expression containing the function \\(bar\\) will be abandoned.\\\\n\"\[\r\n\]+410\\^error,msg=3D\"The program being debugged was signaled while in a function called from GDB.\\\\nGDB remains in the frame where the signal was received.\\\\nTo change this behavior use \\\\\"set unwindonsignal on\\\\\"\\\\nEvaluation of the expression containing the function \\(bar\\) will be abandoned.\"" "call inferior function which raises exception" =20=20 ! mi_gdb_test "411-stack-list-frames" "411\\^done,reason=3D\"signal-received\",signal-name=3D\".*\",signal-meaning =3D\".*\",thread-id=3D\"$decimal\",frame=3D\{addr=3D\"$hex\",func=3D\"bar\"= ,args=3D\ \\[\\\],file=3D\".*mi-syn-frame.c\",line=3D\"$decimal\"\},stack=3D\\\[frame= =3D\{ level=3D\"0\",addr=3D\"$hex\",func=3D\"bar\",file=3D\".*mi-syn-frame.c\",li= ne=3D\" $decimal\"},frame=3D\{level=3D\"1\",addr=3D\"$hex\",func=3D\"\"\},frame=3D\{level=3D\"2\",addr=3D\"$hex\",func=3D\"main\",file=3D\".= *mi-syn -frame.c\",line=3D\"$decimal\"}.*\\\]" "backtrace from inferior function at exception" =20=20 mi_gdb_exit =20=20 --- 104,110 ---- =20=20 mi_gdb_test "410-data-evaluate-expression bar()" "hi in bar\[\r\n\]+\\&\"The program being debugged was signaled while in a function called from GDB.\\\\n\"\[\r\n\]+\\&\"GDB remains in the frame where the signal was received.\\\\n\"\[\r\n\]+\\&\"To change this behavior use \\\\\"set unwindonsignal on\\\\\"\\\\n\"\[\r\n\]+\\&\"Evaluation of the expression containing the function \\(bar\\) will be abandoned.\\\\n\"\[\r\n\]+410\\^error,msg=3D\"The program being debugged was signaled while in a function called from GDB.\\\\nGDB remains in the frame where the signal was received.\\\\nTo change this behavior use \\\\\"set unwindonsignal on\\\\\"\\\\nEvaluation of the expression containing the function \\(bar\\) will be abandoned.\"" "call inferior function which raises exception" =20=20 ! mi_gdb_test "411-stack-list-frames" "411\\^done,reason=3D\"signal-received\",signal-name=3D\".*\",signal-meaning =3D\".*\",thread-id=3D\"$decimal\",frame=3D\{addr=3D\"$hex\",func=3D\"bar\"= ,args=3D\ \\[\\\],file=3D\".*mi-syn-frame.c\",fullname=3D\".*mi-syn-frame.c\",line=3D= \"$ decimal\"\},stack=3D\\\[frame=3D\{level=3D\"0\",addr=3D\"$hex\",func=3D\"ba= r\",fil e=3D\".*mi-syn-frame.c\",fullname=3D\".*mi-syn-frame.c\",line=3D\"$decimal\= "}, frame=3D\{level=3D\"1\",addr=3D\"$hex\",func=3D\"\"\},frame=3D\{level=3D\"2\",addr=3D\"$hex\",func=3D\"main\",file=3D\".= *mi-syn -frame.c\",fullname=3D\".*mi-syn-frame.c\",line=3D\"$decimal\"}.*\\\]" "backtrace from inferior function at exception" =20=20 mi_gdb_exit =20=20 Index: gdb/testsuite/gdb.mi/mi2-until.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi2-until.exp,v retrieving revision 1.2 diff -c -p -b -r1.2 mi2-until.exp *** gdb/testsuite/gdb.mi/mi2-until.exp 9 Aug 2004 22:21:54 -0000 1.2 --- gdb/testsuite/gdb.mi/mi2-until.exp 24 Mar 2005 18:34:14 -0000 *************** proc test_until {} { *** 78,84 **** =20=20 send_gdb "111-exec-until\n" gdb_expect { ! -re "111\\^running\r\n${mi_gdb_prompt}111\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"foo\",args= =3D\\\[\ \\],file=3D\".*until.c\",line=3D\"12\"\}\r\n$mi_gdb_prompt$" { pass "until after while loop" } timeout { --- 78,84 ---- =20=20 send_gdb "111-exec-until\n" gdb_expect { ! -re "111\\^running\r\n${mi_gdb_prompt}111\\*stopped,reason=3D\"end-stepping-ra nge\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"foo\",args= =3D\\\[\ \\],file=3D\".*until.c\",fullname=3D\".*until.c\",line=3D\"12\"\}\r\n$mi_gd= b_p rompt$" { pass "until after while loop" } timeout { *************** proc test_until {} { *** 88,94 **** =20=20 send_gdb "222-exec-until 15\n" gdb_expect { ! -re "222\\^running\r\n${mi_gdb_prompt}222\\*stopped,reason=3D\"location-reache d\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"foo\",args=3D= \\\[\\\ ],file=3D\".*until.c\",line=3D\"15\"\}\r\n$mi_gdb_prompt$" { pass "until line number" } timeout { --- 88,94 ---- =20=20 send_gdb "222-exec-until 15\n" gdb_expect { ! -re "222\\^running\r\n${mi_gdb_prompt}222\\*stopped,reason=3D\"location-reache d\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"foo\",args=3D= \\\[\\\ ],file=3D\".*until.c\",fullname=3D\".*until.c\",line=3D\"15\"\}\r\n$mi_gdb_= pro mpt$" { pass "until line number" } timeout { *************** proc test_until {} { *** 98,104 **** =20=20 send_gdb "333-exec-until until.c:17\n" gdb_expect { ! -re "333\\^running\r\n${mi_gdb_prompt}333\\*stopped,reason=3D\"location-reache d\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"foo\",args=3D= \\\[\\\ ],file=3D\".*until.c\",line=3D\"17\"\}\r\n$mi_gdb_prompt$" { pass "until line number:file" } timeout { --- 98,104 ---- =20=20 send_gdb "333-exec-until until.c:17\n" gdb_expect { ! -re "333\\^running\r\n${mi_gdb_prompt}333\\*stopped,reason=3D\"location-reache d\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"foo\",args=3D= \\\[\\\ ],file=3D\".*until.c\",fullname=3D\".*until.c\",line=3D\"17\"\}\r\n$mi_gdb_= pro mpt$" { pass "until line number:file" } timeout { *************** proc test_until {} { *** 110,116 **** =20=20 send_gdb "444-exec-until until.c:25\n" gdb_expect { ! -re "444\\^running\r\n${mi_gdb_prompt}444\\*stopped,reason=3D\"location-reache d\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[\\ \],file=3D\".*until.c\",line=3D\"24\"\}\r\n$mi_gdb_prompt$" { pass "until after current function" } timeout { --- 110,116 ---- =20=20 send_gdb "444-exec-until until.c:25\n" gdb_expect { ! -re "444\\^running\r\n${mi_gdb_prompt}444\\*stopped,reason=3D\"location-reache d\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"main\",args= =3D\\\[\\ \],file=3D\".*until.c\",fullname=3D\".*until.c\",line=3D\"24\"\}\r\n$mi_gdb= _pr ompt$" { pass "until after current function" } timeout { Index: gdb/testsuite/gdb.mi/mi2-var-display.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/gdb.mi/mi2-var-display.exp,v retrieving revision 1.4 diff -c -p -b -r1.4 mi2-var-display.exp *** gdb/testsuite/gdb.mi/mi2-var-display.exp 17 Aug 2004 09:38:29 -0000 1.4 --- gdb/testsuite/gdb.mi/mi2-var-display.exp 24 Mar 2005 18:34:15 -0000 *************** mi_gdb_test "200-break-insert incr_a" \ *** 592,601 **** "break-insert operation" send_gdb "-exec-continue\n" gdb_expect { ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"breakpoint-hit\",bkpt no=3D\"3\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"incr_a= \",args =3D\\\[\{name=3D\"a\",value=3D\"2\.*\"\}\\\],file=3D\".*var-cmd.c\",line=3D= \"$line _incr_a_b_a\"\}\r\n$mi_gdb_prompt$" { pass "continue to incr_a" } ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"breakpoint-hit\",bkpt no=3D\"3\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"incr_a= \",args =3D\\\[\{name=3D\"a\",value=3D\"\.*\"\}\\\],file=3D\".*var-cmd.c\",line=3D\= "([expr $line_incr_a_b_a - 2]|[expr $line_incr_a_b_a - 1]|$line_incr_a_b_a)\"\}\r\n$mi_gdb_prompt$" { fail "continue to incr_a (compiler debug info incorrect)" } -re "\\^running\r\n${mi_gdb_prompt}.*\r\n$mi_gdb_prompt$" { --- 592,601 ---- "break-insert operation" send_gdb "-exec-continue\n" gdb_expect { ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"breakpoint-hit\",bkpt no=3D\"3\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"incr_a= \",args =3D\\\[\{name=3D\"a\",value=3D\"2\.*\"\}\\\],file=3D\".*var-cmd.c\",fullnam= e=3D\". *var-cmd.c\",line=3D\"$line_incr_a_b_a\"\}\r\n$mi_gdb_prompt$" { pass "continue to incr_a" } ! -re "\\^running\r\n${mi_gdb_prompt}\\*stopped,reason=3D\"breakpoint-hit\",bkpt no=3D\"3\",thread-id=3D\"\[01\]\",frame=3D\{addr=3D\"$hex\",func=3D\"incr_a= \",args =3D\\\[\{name=3D\"a\",value=3D\"\.*\"\}\\\],file=3D\".*var-cmd.c\",fullname= =3D\".* var-cmd.c\",line=3D\"([expr $line_incr_a_b_a - 2]|[expr $line_incr_a_b_a - 1]|$line_incr_a_b_a)\"\}\r\n$mi_gdb_prompt$" { fail "continue to incr_a (compiler debug info incorrect)" } -re "\\^running\r\n${mi_gdb_prompt}.*\r\n$mi_gdb_prompt$" { Index: gdb/testsuite/lib/mi-support.exp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/testsuite/lib/mi-support.exp,v retrieving revision 1.25 diff -c -p -b -r1.25 mi-support.exp *** gdb/testsuite/lib/mi-support.exp 14 Mar 2005 15:42:52 -0000 1.25 --- gdb/testsuite/lib/mi-support.exp 24 Mar 2005 18:34:15 -0000 *************** proc mi_runto {func} { *** 813,819 **** =20=20 mi_run_cmd gdb_expect { ! -re ".*000\\*stopped,reason=3D\"breakpoint-hit\",bkptno=3D\"$bkptno\",thread-id= =3D \"$decimal\",frame=3D\{addr=3D\"$hex\",func=3D\"$func\",args=3D\(\\\[.*\\\]= \|\{. *\}\),file=3D\".*\",line=3D\"\[0-9\]*\"\}\r\n$mi_gdb_prompt$" { pass "$test" return 0 } --- 813,819 ---- =20=20 mi_run_cmd gdb_expect { ! -re ".*000\\*stopped,reason=3D\"breakpoint-hit\",bkptno=3D\"$bkptno\",thread-id= =3D \"$decimal\",frame=3D\{addr=3D\"$hex\",func=3D\"$func\",args=3D\(\\\[.*\\\]= \|\{. *\}\),file=3D\".*\",fullname=3D\".*\",line=3D\"\[0-9\]*\"\}\r\n$mi_gdb_prom= pt$ " { pass "$test" return 0 } *************** proc mi_execute_to_helper { cmd reason f *** 859,869 **** global decimal send_gdb "220-$cmd\n" gdb_expect { ! -re ".*220\\^running\r\n${mi_gdb_prompt}.*220\\*stopped,reason=3D\"$reason\",t hread-id=3D\"$decimal\",frame=3D\{addr=3D\"$hex\",func=3D\"$func\",args=3D$= args,fi le=3D\".*$file\",line=3D\"$line\"\}$extra\r\n$mi_gdb_prompt$" { pass "$test" return 0 } ! -re ".*220\\^running\r\n${mi_gdb_prompt}.*220\\*stopped,reason=3D\"$reason\",t hread-id=3D\"$decimal\",frame=3D\{addr=3D\"$hex\",func=3D\".*\",args=3D\[\\= \[\{\]. *\[\\\]\}\],file=3D\".*\",line=3D\"\[0-9\]*\"\}.*\r\n$mi_gdb_prompt$" { fail "$test (stopped at wrong place)" return -1 } --- 859,869 ---- global decimal send_gdb "220-$cmd\n" gdb_expect { ! -re ".*220\\^running\r\n${mi_gdb_prompt}.*220\\*stopped,reason=3D\"$reason\",t hread-id=3D\"$decimal\",frame=3D\{addr=3D\"$hex\",func=3D\"$func\",args=3D$= args,fi le=3D\".*$file\",fullname=3D\".*$file\",line=3D\"$line\"\}$extra\r\n$mi_gdb= _pr ompt$" { pass "$test" return 0 } ! -re ".*220\\^running\r\n${mi_gdb_prompt}.*220\\*stopped,reason=3D\"$reason\",t hread-id=3D\"$decimal\",frame=3D\{addr=3D\"$hex\",func=3D\".*\",args=3D\[\\= \[\{\]. *\[\\\]\}\],file=3D\".*\",fullname=3D\".*\",line=3D\"\[0-9\]*\"\}.*\r\n$mi_= gdb _prompt$" { fail "$test (stopped at wrong place)" return -1 }