[gdb/testsuite] Fix gdb.ada/convvar_comp.exp with broken debug info
authorTom de Vries <tdevries@suse.de>
Fri, 29 Jul 2022 14:12:55 +0000 (16:12 +0200)
committerTom de Vries <tdevries@suse.de>
Fri, 29 Jul 2022 14:12:55 +0000 (16:12 +0200)
commit5ec878132bb39fb43e081dcf53e42aca202b24d9
treeb67e3844f8dacf74532a02f3b485e6a297ab737f
parent10948fb9fd66c029d59c97e04556ab827076336c
[gdb/testsuite] Fix gdb.ada/convvar_comp.exp with broken debug info

On aarch64-linux I run into this failure with gcc 7.5.0:
...
(gdb) print $item.started^M
$1 = (-5312, 65535, 4202476)^M
(gdb) FAIL: gdb.ada/convvar_comp.exp: print $item.started
...

The test-case expects (0, 0, 0), but we're getting another value due to
incorrect location information.

Work around this by:
- first printing the value, and then
- verifying that the convenience variable matches the printed value.

I've verified that the test-case still checks what it should by disabling
the fix from commit cc0e770c0d0 ("memory error printing component of record
from convenience variable") and observing the test-case fail.

Tested on x86_64-linux and aarch64-linux.

Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29420
gdb/testsuite/gdb.ada/convvar_comp.exp