Fix latent bug in DWARF test case

On my branch that replaces the DWARF psymtab reader,
dw2-stack-boundary.exp started failing.  However, when I look at the
output in gdb.log, it is correct:

    file /home/tromey/gdb/build/gdb/testsuite/outputs/gdb.dwarf2/dw2-stack-boundary/dw2-stack-boundary
    Reading symbols from /home/tromey/gdb/build/gdb/testsuite/outputs/gdb.dwarf2/dw2-stack-boundary/dw2-stack-boundary...
    During symbol reading: location description stack overflow
    During symbol reading: location description stack underflow

What happens to cause the failure is that the two branches in
gdb_test_multiple appear in this order:

    -re "\r\nDuring symbol reading: location description stack underflow" {
    [...]
    -re "\r\nDuring symbol reading: location description stack overflow" {

The first one will match the above, without causing the second one to
ever match -- leading to a spurious failure.

Anchoring the regexps seems to fix the problem, and works for the
current gdb as well.
This commit is contained in:
Tom Tromey 2021-10-29 17:04:09 -06:00
parent 2a8f1f4744
commit 6e195444fb

View File

@ -44,11 +44,11 @@ gdb_test_multiple "file $binfile" "file command" {
-re "\r\nReading symbols from \[^\r\n\]*\\.\\.\\." {
exp_continue
}
-re "\r\nDuring symbol reading: location description stack underflow" {
-re "^\r\nDuring symbol reading: location description stack underflow" {
set w1 1
exp_continue
}
-re "\r\nDuring symbol reading: location description stack overflow" {
-re "^\r\nDuring symbol reading: location description stack overflow" {
set w2 1
exp_continue
}