[PATCH] Fix latent bug in DWARF test case
Simon Marchi
simon.marchi@polymtl.ca
Sun Oct 31 02:45:28 GMT 2021
On 2021-10-30 17:00, Tom Tromey wrote:
> 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.
> ---
> gdb/testsuite/gdb.dwarf2/dw2-stack-boundary.exp | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/gdb/testsuite/gdb.dwarf2/dw2-stack-boundary.exp b/gdb/testsuite/gdb.dwarf2/dw2-stack-boundary.exp
> index 8b81b5b2119..054d0c66e71 100644
> --- a/gdb/testsuite/gdb.dwarf2/dw2-stack-boundary.exp
> +++ b/gdb/testsuite/gdb.dwarf2/dw2-stack-boundary.exp
> @@ -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
> }
>
This LGTM. I'll try to remember this technique for when expecting
things that can be in different orders.
Simon
More information about the Gdb-patches
mailing list