summaryrefslogtreecommitdiff
path: root/gdb/testsuite/lib
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2012-07-10 14:41:15 +0000
committerTom Tromey <tromey@redhat.com>2012-07-10 14:41:15 +0000
commited8e9d8857c8259fcfe54f88567aecd0aa28a9c8 (patch)
tree3c80a7b0624f2792613104a5e47bc798583c8eea /gdb/testsuite/lib
parent156025ed41ac385f4e7729289bbab2c6b8d0587c (diff)
downloadgdb-ed8e9d8857c8259fcfe54f88567aecd0aa28a9c8.tar.gz
* lib/gdb.exp (standard_testfile): Unset output variables from
earlier invocations.
Diffstat (limited to 'gdb/testsuite/lib')
-rw-r--r--gdb/testsuite/lib/gdb.exp13
1 files changed, 13 insertions, 0 deletions
diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
index 289d4d82123..6ae31293f29 100644
--- a/gdb/testsuite/lib/gdb.exp
+++ b/gdb/testsuite/lib/gdb.exp
@@ -3098,6 +3098,7 @@ proc standard_output_file {basename} {
proc standard_testfile {args} {
global gdb_test_file_name
global objdir subdir
+ global gdb_test_file_last_vars
# Outputs.
global testfile binfile
@@ -3109,6 +3110,17 @@ proc standard_testfile {args} {
set args .c
}
+ # Unset our previous output variables.
+ # This can help catch hidden bugs.
+ if {[info exists gdb_test_file_last_vars]} {
+ foreach varname $gdb_test_file_last_vars {
+ global $varname
+ catch {unset $varname}
+ }
+ }
+ # 'executable' is often set by tests.
+ set gdb_test_file_last_vars {executable}
+
set suffix ""
foreach arg $args {
set varname srcfile$suffix
@@ -3122,6 +3134,7 @@ proc standard_testfile {args} {
}
set $varname $arg
+ lappend gdb_test_file_last_vars $varname
if {$suffix == ""} {
set suffix 2