aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.chill/string.exp
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/testsuite/gdb.chill/string.exp')
-rw-r--r--gdb/testsuite/gdb.chill/string.exp27
1 files changed, 12 insertions, 15 deletions
diff --git a/gdb/testsuite/gdb.chill/string.exp b/gdb/testsuite/gdb.chill/string.exp
index e7c7b25..436f3bd 100644
--- a/gdb/testsuite/gdb.chill/string.exp
+++ b/gdb/testsuite/gdb.chill/string.exp
@@ -21,6 +21,16 @@ if $tracelevel then {
strace $tracelevel
}
+if [skip_chill_tests] then { continue }
+
+set testfile "string"
+set srcfile ${srcdir}/$subdir/${testfile}.ch
+set binfile ${objdir}/${subdir}/${testfile}.exe
+if { [compile "${srcfile} -g -o ${binfile} ${CHILL_RT0} ${CHILL_LIB}"] != "" } {
+ perror "Couldn't compile ${srcfile}"
+ return -1
+}
+
proc do_tests {} {
global prms_id bug_id subdir objdir srcdir binfile prompt
@@ -32,7 +42,7 @@ proc do_tests {} {
gdb_exit
gdb_start
gdb_reinitialize_dir $srcdir/$subdir
- gdb_load $objdir/$subdir/$binfile
+ gdb_load $binfile
send "set language chill\n" ; expect -re "$prompt $"
@@ -55,17 +65,4 @@ proc do_tests {} {
gdb_test "p upper(s20)" { = 19} "print varying string upper"
}
-# Check to see if we have an executable to test. If not, then either we
-# haven't tried to compile one, or the compilation failed for some reason.
-# In either case, just notify the user and skip the tests in this file.
-
-set binfile "string.exe"
-set srcfile $binfile.ch
-
-if [skip_chill_tests] then { continue }
-
-if ![file exists $objdir/$subdir/$binfile] then {
- warning "$binfile does not exist; tests suppressed." 0
-} else {
- do_tests
-}
+do_tests