aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.threads
diff options
context:
space:
mode:
authorTom de Vries <tdevries@suse.de>2021-04-06 10:40:11 +0200
committerTom de Vries <tdevries@suse.de>2021-04-06 10:40:11 +0200
commit043bcbaf818f0f699ff223064f3e46ee29b9cb69 (patch)
tree9247eee8c9346027e1e84c1f30269e6704479edb /gdb/testsuite/gdb.threads
parenta32a7fdc94efe68926019d870575d0968d8a0a28 (diff)
downloadgdb-043bcbaf818f0f699ff223064f3e46ee29b9cb69.zip
gdb-043bcbaf818f0f699ff223064f3e46ee29b9cb69.tar.gz
gdb-043bcbaf818f0f699ff223064f3e46ee29b9cb69.tar.bz2
[gdb/testsuite] Fix xfail handling in gdb.threads/gcore-thread.exp
When running test-case gdb.threads/gcore-thread.exp on openSUSE Tumbleweed, I run into these XFAILs: ... XFAIL: gdb.threads/gcore-thread.exp: clear __stack_user.next XFAIL: gdb.threads/gcore-thread.exp: clear stack_used.next ... Apart from the xfail, the test-case also sets core0file to "": ... -re "No symbol \"${symbol}\" in current context\\.\r\n$gdb_prompt $" { xfail $test # Do not do the verification. set core0file "" } ... After which we run into this FAIL, because gdb_core_cmd fails to load a core file called "": ... (gdb) core ^M No core file now.^M (gdb) FAIL: gdb.threads/gcore-thread.exp: core0file: \ re-load generated corefile ... Fix this FAIL by skipping gdb_core_cmd if the core file is "". Tested on x86_64-linux. gdb/testsuite/ChangeLog: 2021-04-06 Tom de Vries <tdevries@suse.de> PR testsuite/27691 * gdb.threads/gcore-thread.exp: Don't call gdb_core_cmd with core file "".
Diffstat (limited to 'gdb/testsuite/gdb.threads')
-rw-r--r--gdb/testsuite/gdb.threads/gcore-thread.exp20
1 files changed, 16 insertions, 4 deletions
diff --git a/gdb/testsuite/gdb.threads/gcore-thread.exp b/gdb/testsuite/gdb.threads/gcore-thread.exp
index 2a6ab17..35c75f7 100644
--- a/gdb/testsuite/gdb.threads/gcore-thread.exp
+++ b/gdb/testsuite/gdb.threads/gcore-thread.exp
@@ -114,11 +114,13 @@ if {"$core0file" != ""} {
# Now restart gdb and load the corefile.
clean_restart ${testfile}
-foreach name { corefile core0file } { with_test_prefix $name {
- set core_loaded [gdb_core_cmd [subst $$name] "re-load generated corefile"]
+proc load_core { filename } {
+ global horiz nl
+
+ set core_loaded [gdb_core_cmd $filename "re-load generated corefile"]
if { $core_loaded == -1 } {
# No use proceeding from here.
- continue
+ return
}
# FIXME: now what can we test about the thread state?
@@ -139,4 +141,14 @@ foreach name { corefile core0file } { with_test_prefix $name {
gdb_test "info threads" "\\* ${horiz} thread2 .*${nl}" \
"thread2 is current thread in corefile"
-}}
+}
+
+foreach name { corefile core0file } {
+ set filename [subst $$name]
+ if { $filename == "" } {
+ continue
+ }
+ with_test_prefix $name {
+ load_core $filename
+ }
+}