[gdb/testsuite, 1/2] Fix gdb.linespec/explicit.exp with check-read1
authorTom de Vries <tdevries@suse.de>
Mon, 29 Jul 2019 14:24:57 +0000 (16:24 +0200)
committerTom de Vries <tdevries@suse.de>
Mon, 29 Jul 2019 14:24:57 +0000 (16:24 +0200)
commit507dd60e28d0ef35ffb7c0880933d6b88cc3f5bd
tree7b22110612e799c2f3f15c82d77c6e9d40b2d292
parent5beafce944b6b200d1fa80d7f4a8656cb2ecf2fa
[gdb/testsuite, 1/2] Fix gdb.linespec/explicit.exp with check-read1

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.

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/ChangeLog
gdb/testsuite/gdb.linespec/explicit.exp