This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[RFA] Error handling in gdb/testsuite/config/sid.exp
- To: gdb-patches at sources dot redhat dot com
- Subject: [RFA] Error handling in gdb/testsuite/config/sid.exp
- From: Michael Snyder <msnyder at cygnus dot com>
- Date: Thu, 3 May 2001 15:56:14 -0700 (PDT)
- Cc: fnasser at redhat dot com
These changes will handle some error conditions.
2001-05-03 Michael Snyder <msnyder@redhat.com>
* config/sid.exp (gdb_target_sid): Check for error messages.
On error or timeout, don't make expect exit (which will terminate
all subsequent tests); instead just make gdb exit.
(gdb_load): Check for error messages. On error or timeout,
return a negative value.
*** sid.exp.mrg Thu May 3 15:49:44 2001
--- sid.exp Thu May 3 15:49:02 2001
*************** proc gdb_target_sid { } {
*** 141,153 ****
set timeout 60
verbose "Timeout is now $timeout seconds" 2
gdb_expect {
-re "Remote debugging using.*$gdb_prompt" {
verbose "Set target to sid"
}
timeout {
perror "Couldn't set target for remote simulator."
cleanup
! exit $exit_status
}
}
set timeout $prev_timeout
--- 141,158 ----
set timeout 60
verbose "Timeout is now $timeout seconds" 2
gdb_expect {
+ -re ".*\[Ee\]rror.*$gdb_prompt $" {
+ perror "Couldn't set target for remote simulator."
+ cleanup
+ gdb_exit
+ }
-re "Remote debugging using.*$gdb_prompt" {
verbose "Set target to sid"
}
timeout {
perror "Couldn't set target for remote simulator."
cleanup
! gdb_exit
}
}
set timeout $prev_timeout
*************** proc gdb_load { arg } {
*** 164,169 ****
--- 169,175 ----
global loadfile
global GDB
global gdb_prompt
+ global retval
gdb_unload
if [gdb_file_cmd $arg] then { return -1 }
*************** proc gdb_load { arg } {
*** 175,198 ****
set timeout 2400
verbose "Timeout is now $timeout seconds" 2
gdb_expect {
-re ".*$gdb_prompt $" {
if $verbose>1 then {
send_user "Loaded $arg into $GDB\n"
}
! set timeout 30
! verbose "Timeout is now $timeout seconds" 2
! return 1
}
-re "$gdb_prompt $" {
if $verbose>1 then {
perror "GDB couldn't load."
}
}
timeout {
if $verbose>1 then {
perror "Timed out trying to load $arg."
}
}
}
set timeout $prev_timeout
}
--- 181,212 ----
set timeout 2400
verbose "Timeout is now $timeout seconds" 2
gdb_expect {
+ -re ".*\[Ee\]rror.*$gdb_prompt $" {
+ if $verbose>1 then {
+ perror "Error during download."
+ }
+ set retval -1;
+ }
-re ".*$gdb_prompt $" {
if $verbose>1 then {
send_user "Loaded $arg into $GDB\n"
}
! set retval 1;
}
-re "$gdb_prompt $" {
if $verbose>1 then {
perror "GDB couldn't load."
}
+ set retval -1;
}
timeout {
if $verbose>1 then {
perror "Timed out trying to load $arg."
}
+ set retval -1;
}
}
set timeout $prev_timeout
+ verbose "Timeout is now $timeout seconds" 2
+ return $retval;
}