[committed,gdb/testsuite,1/2] Fix gdb.linespec/explicit.exp with check-read1
Commit Message
Hi,
When running gdb.linespec/explicit.exp with check-read1, we get:
...
(gdb) PASS: gdb.linespec/explicit.exp: complete unique file name: break -source "3explicit.c"
break -source exp^Glicit^G^M
explicit.c explicit2.c ^M
(gdb) FAIL: gdb.linespec/explicit.exp: complete non-unique file name
...
The problem is that we have a gdb_test_multiple where we match two regexps:
...
set tst "complete non-unique file name"
send_gdb "break -source exp\t"
gdb_test_multiple "" $tst {
-re "break -source exp\\\x07licit" {
...
}
-re "break -source exp\\\x07l" {
# This pattern may occur when glibc debuginfo is installed.
...
}
}
...
but since second is a substring of the first, we'll usually match the first,
but with check-read1 we'll match the second.
Fix this by using a single regexp and merging the related code.
Tested on x86_64-linux.
Committed to trunk.
Thanks,
- Tom
[gdb/testsuite, 1/2] Fix gdb.linespec/explicit.exp with check-read1
gdb/testsuite/ChangeLog:
2019-07-29 Tom de Vries <tdevries@suse.de>
* gdb.linespec/explicit.exp: Fix gdb_test_multiple regexps where second
is a substring of the first for "complete non-unique file name".
---
gdb/testsuite/gdb.linespec/explicit.exp | 15 +--------------
1 file changed, 1 insertion(+), 14 deletions(-)
@@ -241,20 +241,7 @@ namespace eval $testfile {
-re "break -source exp\\\x07licit" {
send_gdb "\t\t"
gdb_test_multiple "" $tst {
- -re "\\\x07\r\nexplicit.c\[ \t\]+explicit2.c\[ \t\]+\r\n$gdb_prompt" {
- send_gdb "\n"
- gdb_test "" \
- {Source filename requires function, label, or line offset.} \
- $tst
- }
- }
- }
-
- -re "break -source exp\\\x07l" {
- # This pattern may occur when glibc debuginfo is installed.
- send_gdb "\t\t"
- gdb_test_multiple "" $tst {
- -re "\\\x07\r\nexplicit.c\[ \t\]+explicit2.c\[ \t\]+expl.*\r\n$gdb_prompt" {
+ -re "\\\x07\r\nexplicit.c\[ \t\]+explicit2.c\[ \t\]+\(expl.*\)?\r\n$gdb_prompt" {
send_gdb "\n"
gdb_test "" \
{Source filename requires function, label, or line offset.} \