From 61bcae62f75a3075d4455ff3ba8204b50bfed75e Mon Sep 17 00:00:00 2001 From: Andrew Cagney Date: Fri, 23 Apr 2004 16:44:25 +0000 Subject: [PATCH] 2004-04-23 Andrew Cagney * gdb.base/siginfo.exp: Clean up step out of signal. * gdb.base/sigstep.exp: Ditto. --- gdb/testsuite/ChangeLog | 5 +++++ gdb/testsuite/gdb.base/siginfo.exp | 13 ++++++++++--- gdb/testsuite/gdb.base/sigstep.exp | 22 ++++++++++------------ 3 files changed, 25 insertions(+), 15 deletions(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 2b5e05d..17a37aa 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2004-04-23 Andrew Cagney + + * gdb.base/siginfo.exp: Better handle step out of signal. + * gdb.base/sigstep.exp: Ditto. + 2004-04-22 Jeff Johnston Daniel Jacobowitz diff --git a/gdb/testsuite/gdb.base/siginfo.exp b/gdb/testsuite/gdb.base/siginfo.exp index f335bc7..a081ab8 100644 --- a/gdb/testsuite/gdb.base/siginfo.exp +++ b/gdb/testsuite/gdb.base/siginfo.exp @@ -83,9 +83,16 @@ gdb_test_multiple "step" "${test}" { send_gdb "step\n" exp_continue } - -re "return 0.*${gdb_prompt} $" { - # Stepping out of a function GDB advances the inferior to the - # start of the next line + -re "Program exited normally.*${gdb_prompt} $" { + kfail gdb/1613 "$test (program exited)" + } + -re "(while ..done|return 0).*${gdb_prompt} $" { + # After stepping out of a function /r signal-handler, GDB will + # advance the inferior until it is at the first instruction of + # a code-line. While typically things return to the middle of + # the "while..." (and hence GDB advances the inferior to the + # "return..." line) it is also possible for the return to land + # on the first instruction of "while...". Accept both cases. pass "$test" } } diff --git a/gdb/testsuite/gdb.base/sigstep.exp b/gdb/testsuite/gdb.base/sigstep.exp index 6f94329..e0eaf75 100644 --- a/gdb/testsuite/gdb.base/sigstep.exp +++ b/gdb/testsuite/gdb.base/sigstep.exp @@ -87,17 +87,15 @@ proc advance { i } { exp_continue } -re "Program exited normally.*${gdb_prompt} $" { - kfail gdb/1613 "$test (Program exited normally)" - } - -re "while ..done.*${gdb_prompt} $" { - # After stepping out of a function, GDB might find that - # the inferior is already at the first instruction of this - # line. - pass "$test" - } - -re "return 0.*${gdb_prompt} $" { - # After stepping out of a function, GDB will advance the - # inferior to the start of the next line. + kfail gdb/1613 "$test (program exited)" + } + -re "(while ..done|return 0).*${gdb_prompt} $" { + # After stepping out of a function /r signal-handler, GDB will + # advance the inferior until it is at the first instruction of + # a code-line. While typically things return to the middle of + # the "while..." (and hence GDB advances the inferior to the + # "return..." line) it is also possible for the return to land + # on the first instruction of "while...". Accept both cases. pass "$test" } } @@ -125,7 +123,7 @@ proc advancei { i } { pass "$test" } -re "Program exited normally.*${gdb_prompt} $" { - kfail gdb/1613 "$test (Program exited normally)" + kfail gdb/1613 "$test (program exited)" set program_exited 1 } -re "main .*${gdb_prompt} $" { -- 2.7.4