aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@polymtl.ca>2020-11-18 14:58:42 -0500
committerSimon Marchi <simon.marchi@efficios.com>2020-11-18 14:58:42 -0500
commitcf144ec890cfdf6f0586a44ff9eee1ba73291def (patch)
tree979121eb19b9ce38e28ff26c9dfbb74c2a58081b /gdb
parent6b6a3e057eaab9735b683e32fe55f3ebf4ebae7e (diff)
downloadgdb-cf144ec890cfdf6f0586a44ff9eee1ba73291def.zip
gdb-cf144ec890cfdf6f0586a44ff9eee1ba73291def.tar.gz
gdb-cf144ec890cfdf6f0586a44ff9eee1ba73291def.tar.bz2
gdb/testsuite: use unresolved in mi_run_cmd_full
Running: make check TESTS="gdb.mi/mi-nonstop-exit.exp" RUNTESTFLAGS="--target_board=native-extended-gdbserver" We get: Running /home/simark/src/binutils-gdb/gdb/testsuite/gdb.mi/mi-nonstop-exit.exp ... ERROR: Unable to start target === gdb Summary === # of expected passes 2 The root cause of the problem is the typical "we try to enable non-stop after having connected to gdbserver". This is because with the native-extended-gdbserver board, GDB connects to GDBserver as soon as it's started. It's too late then to do "set non-stop 1" or "-gdb-set non-stop 1". This is fixed by the following patch. More worrying is that the error is not reported (except for the printout). From the testsuite point of view, everything went fine. runtest exits with status 0. This is because mi_run_cmd_full uses perror. perror just prints that ERROR and makes it so the next test becomes UNRESOLVED. However, there's no next test, because we just return early, seeing that we couldn't run. Change mi_run_cmd_full to call unresolved directly instead. This ensures that the failure is recorded. This is the results diff when running the gdb.mi/*.exp tests: # of unexpected failures 34 # of expected failures 8 # of known failures 13 -# of unresolved testcases 4 +# of unresolved testcases 10 # of unsupported tests 1 # of duplicate test names 34 gdb/testsuite/ChangeLog: * lib/mi-support.exp (mi_run_cmd_full): Use unresovled instead of perror. Change-Id: Ib0f214c0127fbe73f2033c6c29d678e025690220
Diffstat (limited to 'gdb')
-rw-r--r--gdb/testsuite/ChangeLog5
-rw-r--r--gdb/testsuite/lib/mi-support.exp6
2 files changed, 8 insertions, 3 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 3aa06fa..4722846 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2020-11-18 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * lib/mi-support.exp (mi_run_cmd_full): Use unresovled instead
+ of perror.
+
2020-11-18 Joseph Myers <joseph@codesourcery.com>
* lib/mi-support.exp (mi_gdb_file_cmd): Check for case where
diff --git a/gdb/testsuite/lib/mi-support.exp b/gdb/testsuite/lib/mi-support.exp
index bfc8edc..1c95dde 100644
--- a/gdb/testsuite/lib/mi-support.exp
+++ b/gdb/testsuite/lib/mi-support.exp
@@ -961,7 +961,7 @@ proc mi_run_cmd_full {use_mi_command args} {
gdb_expect 30 {
-re "$mi_gdb_prompt$" { }
default {
- perror "gdb_init_command for target failed"
+ unresolved "gdb_init_command for target failed"
return -1
}
}
@@ -995,7 +995,7 @@ proc mi_run_cmd_full {use_mi_command args} {
gdb_expect {
-re "&\"jump \\*${start}\\\\n\"\[\r\n\]+~\"Continuing at 0x\[0-9A-Fa-f\]+\.\\\\n\"\[\r\n\]+\\^running\[\r\n\]+\\*running,thread-id=\"\[^\"\]+\"\[\r\n\]+${mi_gdb_prompt}" {}
timeout {
- perror "Unable to start target"
+ unresolved "unable to start target"
return -1
}
}
@@ -1011,7 +1011,7 @@ proc mi_run_cmd_full {use_mi_command args} {
return -1
}
timeout {
- perror "Unable to start target"
+ unresolved "unable to start target"
return -1
}
}