diff options
author | Tom de Vries <tdevries@suse.de> | 2021-04-06 10:40:11 +0200 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2021-04-06 10:40:11 +0200 |
commit | 043bcbaf818f0f699ff223064f3e46ee29b9cb69 (patch) | |
tree | 9247eee8c9346027e1e84c1f30269e6704479edb /gdb/testsuite/gdb.threads | |
parent | a32a7fdc94efe68926019d870575d0968d8a0a28 (diff) | |
download | gdb-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.exp | 20 |
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 + } +} |