Hi,
On Sat, Sep 14, 2002 at 11:51:39AM +0200, Corinna Vinschen wrote:
the following patch fixes an error in the testsuite lib. In lib/gdb.exp,
the proc rerun_to_main() doesn't take into account, that some targets
never actually exit, but instead are programatically trapped in some
_exit function.
[...]
may I treat this as obvious patch? I'm not sure if that still counts
as one...
Corinna
* lib/gdb.exp (rerun_to_main): Allow restarting application.
* gdb.base/ena-dis-br.exp (rerun_to_main): Eliminate.
Index: lib/gdb.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/lib/gdb.exp,v
retrieving revision 1.26
diff -u -p -r1.26 gdb.exp
--- lib/gdb.exp 13 Sep 2002 17:20:11 -0000 1.26
+++ lib/gdb.exp 14 Sep 2002 09:44:44 -0000
@@ -1685,6 +1685,10 @@ proc rerun_to_main {} {
} else {
send_gdb "run\n"
gdb_expect {
+ -re "The program .* has been started already.*y or n. $" {
+ send_gdb "y\n"
+ exp_continue
+ }
-re "Starting program.*$gdb_prompt $"\
{pass "rerun to main" ; return 0}
-re "$gdb_prompt $"\
Index: gdb.base/ena-dis-br.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/ena-dis-br.exp,v
retrieving revision 1.2
diff -u -p -r1.2 ena-dis-br.exp
--- gdb.base/ena-dis-br.exp 6 Mar 2001 08:21:50 -0000 1.2
+++ gdb.base/ena-dis-br.exp 14 Sep 2002 09:44:44 -0000
@@ -38,30 +38,6 @@ if { [gdb_compile "${srcdir}/${subdir}/
gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
}
-proc rerun_to_main {} {
- global gdb_prompt
-
- if [target_info exists use_gdb_stub] {
- gdb_run_cmd
- gdb_expect {
- -re ".*Breakpoint .*main .*$gdb_prompt $"\
- {pass "rerun to main" ; return 0}
- -re "$gdb_prompt $"\
- {fail "rerun to main" ; return 0}
- timeout {fail "(timeout) rerun to main" ; return 0}
- }
- } else {
- send_gdb "run\n"
- gdb_expect {
- -re "Starting program.*$gdb_prompt $"\
- {pass "rerun to main" ; return 0}
- -re "$gdb_prompt $"\
- {fail "rerun to main" ; return 0}
- timeout {fail "(timeout) rerun to main" ; return 0}
- }
- }
-}
-
gdb_exit
gdb_start
gdb_reinitialize_dir $srcdir/$subdir