When running test-case gdb.threads/attach-many-short-lived-threads.exp with
check-read1, I ran into:
...
FAIL: gdb.threads/attach-many-short-lived-threads.exp: iter 1: \
no new threads (timeout)
...
Fix this by rewriting the gdb_test_multiple call using -lbl and exp_continue.
Tested on x86_64-linux, with make targets check and check-read1.
gdb/testsuite/ChangeLog:
2020-03-14 Tom de Vries <tdevries@suse.de>
* gdb.threads/attach-many-short-lived-threads.exp: Read "info threads"
result in line-by-line fashion.
+2020-03-14 Tom de Vries <tdevries@suse.de>
+
+ * gdb.threads/attach-many-short-lived-threads.exp: Read "info threads"
+ result in line-by-line fashion.
+
2020-03-14 Tom de Vries <tdevries@suse.de>
* lib/gdb.exp (supports_statement_frontiers): New proc.
sleep 1
set test "no new threads"
- gdb_test_multiple "info threads" $test {
- -re "New .*$gdb_prompt $" {
- fail $test
+ set status 1
+ gdb_test_multiple "info threads" $test -lbl {
+ -re "\r\n\[^\r\n\]*New " {
+ set status 0
+ exp_continue
}
- -re "$gdb_prompt $" {
- pass $test
+ -re -wrap "" {
+ if { $status == 1 } {
+ pass $gdb_test_name
+ } else {
+ fail $gdb_test_name
+ }
}
}