mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-21 18:39:34 +08:00
[gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1
When running gdb.mi/gdb2549.exp with check-read1, we get: ... Running src/gdb/testsuite/gdb.mi/gdb2549.exp ... FAIL: gdb.mi/gdb2549.exp: register values t (timeout) ... The problem is that the command generates a lot of output, which is matched by a single '.*': ... mi_gdb_test "666-data-list-register-values t" \ "666\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$binary\"\}.*\\\]" \ "register values t" ... Fix this by splitting up the matching and calling exp_continue after each number/value pair. Tested on x86_64-linux with make targets check and check-read1. gdb/testsuite/ChangeLog: 2020-03-03 Tom de Vries <tdevries@suse.de> * gdb.mi/gdb2549.exp: Fix "register values t" check-read1 timeout.
This commit is contained in:
@ -1,3 +1,7 @@
|
|||||||
|
2020-03-03 Tom de Vries <tdevries@suse.de>
|
||||||
|
|
||||||
|
* gdb.mi/gdb2549.exp: Fix "register values t" check-read1 timeout.
|
||||||
|
|
||||||
2020-03-03 Tom de Vries <tdevries@suse.de>
|
2020-03-03 Tom de Vries <tdevries@suse.de>
|
||||||
|
|
||||||
* gdb.mi/list-thread-groups-available.exp: Use -prompt syntax for
|
* gdb.mi/list-thread-groups-available.exp: Use -prompt syntax for
|
||||||
|
@ -51,6 +51,7 @@ proc register_tests_no_exec { } {
|
|||||||
proc register_tests { } {
|
proc register_tests { } {
|
||||||
global hex
|
global hex
|
||||||
global decimal
|
global decimal
|
||||||
|
global mi_gdb_prompt
|
||||||
set octal "\[0-7\]+"
|
set octal "\[0-7\]+"
|
||||||
set binary "\[0-1\]+"
|
set binary "\[0-1\]+"
|
||||||
set float "\\-?((\[0-9\]+(\\.\[0-9\]+)?(e\[-+\]\[0-9\]+)?)|(nan\\($hex\\)))"
|
set float "\\-?((\[0-9\]+(\\.\[0-9\]+)?(e\[-+\]\[0-9\]+)?)|(nan\\($hex\\)))"
|
||||||
@ -71,9 +72,35 @@ proc register_tests { } {
|
|||||||
"555\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$octal\"\}.*\\\]" \
|
"555\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$octal\"\}.*\\\]" \
|
||||||
"register values o"
|
"register values o"
|
||||||
|
|
||||||
mi_gdb_test "666-data-list-register-values t" \
|
set cmd "666-data-list-register-values t"
|
||||||
"666\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$binary\"\}.*\\\]" \
|
set test "register values t"
|
||||||
"register values t"
|
set state 0
|
||||||
|
gdb_test_multiple $cmd $test -prompt "$mi_gdb_prompt$" {
|
||||||
|
-re "666\\^done,register-values=\\\[" {
|
||||||
|
if { $state == 0 } {
|
||||||
|
set state 1
|
||||||
|
exp_continue
|
||||||
|
}
|
||||||
|
fail $gdb_test_name
|
||||||
|
}
|
||||||
|
-re "\{number=\"$decimal\",value=\"$binary\"\}" {
|
||||||
|
if { $state != 0 } {
|
||||||
|
set state 2
|
||||||
|
exp_continue
|
||||||
|
}
|
||||||
|
fail $gdb_test_name
|
||||||
|
}
|
||||||
|
-re "\{number=\"$decimal\",value=\"\[^\"\]*\"\}" {
|
||||||
|
exp_continue
|
||||||
|
}
|
||||||
|
-re "\]\r\n$mi_gdb_prompt$" {
|
||||||
|
if { $state == 2 } {
|
||||||
|
pass $gdb_test_name
|
||||||
|
} else {
|
||||||
|
fail $gdb_test_name
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
register_tests_no_exec
|
register_tests_no_exec
|
||||||
|
Reference in New Issue
Block a user