This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: [PATCH RFA] gdb.base/finish.exp: Allow finish to stop on call


Kevin Buettner wrote:
> 
> On May 23,  8:18pm, Fernando Nasser wrote:
> 
> > Your second pattern needs a small improvement though.  As we are
> > returning to the middle of that source line, the information printed by
> > GDB will have the address (PC) as well.  We must make sure that we test
> > for that so we can differentiate between returning to the beginning of
> > the calling line (wrong) and returning to after where the assembler jump
> > to subroutine was (right).  You can test for that without binding to a
> > specific PC value -- there are several examples around.
> >
> > After making this change, and testing that it works, of course, you can
> > commit your patch.  Please post the final version for the records.
> 
> The patch you refer to has already been committed.  (Michael S. approved
> it.)
> 

Michael got confused, he can checkin anywhere but can only approve
patches to gdb.trace and gdb.threads (for now, at least).  But no big
deal, this is close to an obvious fix.

> I do agree that it is worthwhile to make the pattern more restrictive
> and have just committed the patch below.  I've tested it on the IA-64
> machine where I was previously seeing a failure.  (It still works as
> expected.)
> 

Yes!  That is what I meant.

Thank you very much.



>         * gdb.base/finish.exp (finish_void): Revise pattern for
>         stopping on the call statement to not permit stopping at
>         the start of the instructions comprising the call sequence.
> 
> Index: testsuite/gdb.base/finish.exp
> ===================================================================
> RCS file: /cvs/src/src/gdb/testsuite/gdb.base/finish.exp,v
> retrieving revision 1.4
> diff -u -p -r1.4 finish.exp
> --- finish.exp  2001/05/22 00:25:27     1.4
> +++ finish.exp  2001/05/24 00:59:25
> @@ -85,7 +85,7 @@ proc finish_void { } {
>         -re ".*void_checkpoint.*$gdb_prompt $" {
>             pass "finish from void_func"
>         }
> -       -re ".*call to void_func.*$gdb_prompt $" {
> +       -re "0x\[0-9a-fA-F\]+ in main.*call to void_func.*$gdb_prompt $" {
>             pass "finish from void_func"
>         }
>         -re ".*$gdb_prompt $" {

-- 
Fernando Nasser
Red Hat Canada Ltd.                     E-Mail:  fnasser@redhat.com
2323 Yonge Street, Suite #300
Toronto, Ontario   M4P 2C9


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]