* [committed][gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1
@ 2021-10-08 11:08 Tom de Vries via Gdb-patches
0 siblings, 0 replies; 2+ messages in thread
From: Tom de Vries via Gdb-patches @ 2021-10-08 11:08 UTC (permalink / raw)
To: gdb-patches
Hi,
When running test-case gdb.mi/gdb2549.exp with check-read1, I run into:
...
FAIL: gdb.mi/gdb2549.exp: register values x (timeout)
...
Fix this by applying the same fix as for "register values t" in commit
478e490a4df "[gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1".
Tested on x86_64-linux.
Committed to trunk.
Thanks,
- Tom
[gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1
---
gdb/testsuite/gdb.mi/gdb2549.exp | 46 ++++++++++++++++++----------------------
1 file changed, 21 insertions(+), 25 deletions(-)
diff --git a/gdb/testsuite/gdb.mi/gdb2549.exp b/gdb/testsuite/gdb.mi/gdb2549.exp
index aebf9c904d9..9cdc31e532c 100644
--- a/gdb/testsuite/gdb.mi/gdb2549.exp
+++ b/gdb/testsuite/gdb.mi/gdb2549.exp
@@ -43,42 +43,23 @@ proc register_tests_no_exec { } {
"no executable"
}
-proc register_tests { } {
- global hex
- global decimal
+proc register_test { n arg format } {
global mi_gdb_prompt
- set octal "\[0-7\]+"
- set binary "\[0-1\]+"
- set float "\\-?((\[0-9\]+(\\.\[0-9\]+)?(e\[-+\]\[0-9\]+)?)|(nan\\($hex\\)))"
-
- mi_gdb_test "222-data-list-register-values x" \
- "222\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$hex\"\}.*\\\]" \
- "register values x"
-
- mi_gdb_test "333-data-list-register-values f" \
- "333\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$float\"\}.*\\\]" \
- "register values f"
-
- mi_gdb_test "444-data-list-register-values d" \
- "444\\^done,register-values=\\\[\{number=\"$decimal\",value=\"-?$decimal\"\}.*\\\]" \
- "register values d"
+ global decimal
- mi_gdb_test "555-data-list-register-values o" \
- "555\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$octal\"\}.*\\\]" \
- "register values o"
+ set cmd "$n-data-list-register-values $arg"
+ set test "register values $arg"
- set cmd "666-data-list-register-values t"
- set test "register values t"
set state 0
gdb_test_multiple $cmd $test -prompt "$mi_gdb_prompt$" {
- -re "666\\^done,register-values=\\\[" {
+ -re "$n\\^done,register-values=\\\[" {
if { $state == 0 } {
set state 1
exp_continue
}
fail $gdb_test_name
}
- -re "\{number=\"$decimal\",value=\"$binary\"\}" {
+ -re "\{number=\"$decimal\",value=\"$format\"\}" {
if { $state != 0 } {
set state 2
exp_continue
@@ -98,6 +79,21 @@ proc register_tests { } {
}
}
+proc register_tests { } {
+ global hex
+ global decimal
+ set octal "\[0-7\]+"
+ set binary "\[0-1\]+"
+ set float \
+ "\\-?((\[0-9\]+(\\.\[0-9\]+)?(e\[-+\]\[0-9\]+)?)|(nan\\($hex\\)))"
+
+ register_test 222 x $hex
+ register_test 333 f $float
+ register_test 444 d -?$decimal
+ register_test 555 o $octal
+ register_test 666 t $binary
+}
+
mi_clean_restart $binfile
register_tests_no_exec
^ permalink raw reply [flat|nested] 2+ messages in thread* [committed][gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1
@ 2020-03-03 10:36 Tom de Vries
0 siblings, 0 replies; 2+ messages in thread
From: Tom de Vries @ 2020-03-03 10:36 UTC (permalink / raw)
To: gdb-patches
Hi,
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.
Committed to trunk.
Thanks,
- Tom
[gdb/testsuite] Fix gdb.mi/gdb2549.exp with 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.
---
gdb/testsuite/gdb.mi/gdb2549.exp | 33 ++++++++++++++++++++++++++++++---
1 file changed, 30 insertions(+), 3 deletions(-)
diff --git a/gdb/testsuite/gdb.mi/gdb2549.exp b/gdb/testsuite/gdb.mi/gdb2549.exp
index 0b4cb6be38..cc6441c8ec 100644
--- a/gdb/testsuite/gdb.mi/gdb2549.exp
+++ b/gdb/testsuite/gdb.mi/gdb2549.exp
@@ -51,6 +51,7 @@ proc register_tests_no_exec { } {
proc register_tests { } {
global hex
global decimal
+ global mi_gdb_prompt
set octal "\[0-7\]+"
set binary "\[0-1\]+"
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\"\}.*\\\]" \
"register values o"
- mi_gdb_test "666-data-list-register-values t" \
- "666\\^done,register-values=\\\[\{number=\"$decimal\",value=\"$binary\"\}.*\\\]" \
- "register values t"
+ set cmd "666-data-list-register-values t"
+ set test "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
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-10-08 11:08 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-08 11:08 [committed][gdb/testsuite] Fix gdb.mi/gdb2549.exp with check-read1 Tom de Vries via Gdb-patches
-- strict thread matches above, loose matches on Subject: below --
2020-03-03 10:36 Tom de Vries
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox