[gdb/testsuite] Fix gdb.cp/m-static.exp regression on Ubuntu 20.04
authorTom de Vries <tdevries@suse.de>
Fri, 24 Mar 2023 08:18:07 +0000 (09:18 +0100)
committerTom de Vries <tdevries@suse.de>
Fri, 24 Mar 2023 08:18:07 +0000 (09:18 +0100)
commit1985d8cb7048bcfce60b59cfe219d3b09bda6373
tree70264b632cfe24fd906aeb6f0e7130655bc655d7
parent8ee55b880fbabe0a20bf4adc1ba68307ba8a02be
[gdb/testsuite] Fix gdb.cp/m-static.exp regression on Ubuntu 20.04

In commit 722c4596034 ("[gdb/testsuite] Fix gdb.cp/*.exp for remote host"), I
needed to change ".*/" into "(.*/)?" in:
...
gdb_test "info variable everywhere" \
    "File .*/m-static\[.\]h.*const int gnu_obj_4::everywhere;"
...

However, due to the fact that I got this output:
...
(gdb) info variable everywhere^M
All variables matching regular expression "everywhere":^M
^M
File /data/vries/gdb/src/gdb/testsuite/gdb.cp/m-static.h:^M
8:      const int gnu_obj_4::everywhere;^M
^M
File /data/vries/gdb/src/gdb/testsuite/gdb.cp/m-static1.cc:^M
8:      const int gnu_obj_4::everywhere;^M
...
I decided to make the matching somewhat stricter, to make sure that the two
matched lines were subsequent.

The commit turned out to be more strict than intended, and caused a regression
on Ubuntu 20.04, where the output was instead:
...
(gdb) info variable everywhere^M
All variables matching regular expression "everywhere":^M
^M
File /data/vries/gdb/src/gdb/testsuite/gdb.cp/m-static.h:^M
8:      const int gnu_obj_4::everywhere;^M
...

At that point I realized I'm looking at a bug (filed as PR symtab/30265),
which manifests on openSUSE Leap 15.4 for native and readnow, and on Ubuntu
20.04 for readnow, but not for native.

Before my commit, the test-case passed whether the bug manifested or not.

After my commit, the test-case only passed when the bug manifested.

Fix the test-case regression by reverting to the situation before the commit:
pass whether the bug manifests or not.  We could add an xfail for the PR, but
I'm expecting a fix soon, so that doesn't look worth the effort.

Tested on x86_64-linux, both on openSUSE Leap 15.4 and Ubuntu 20.04, both with
native and readnow.

Reported-By: Simon Marchi <simon.marchi@efficios.com>
gdb/testsuite/gdb.cp/m-static.exp