[gdb/testsuite] Fix gdb.gdb/selftest.exp
authorTom de Vries <tdevries@suse.de>
Mon, 13 Sep 2021 09:13:28 +0000 (11:13 +0200)
committerTom de Vries <tdevries@suse.de>
Mon, 13 Sep 2021 09:13:28 +0000 (11:13 +0200)
commit7486cb6843e2146c38dfd4daae3e65d97fd44fc1
tree76fc9841cbc7c60df7281b9867eea312b9549a3c
parentfd5255582fde24b7021dc5163b004dad16bf2eec
[gdb/testsuite] Fix gdb.gdb/selftest.exp

With a gdb build with CFLAGS "-O2 -g -flto=auto", I run into:
...
 #7  gdb_main (args=0x7fffffffd220) at src/gdb/main.c:1368^M
 #8  main (argc=<optimized out>, argv=<optimized out>) at src/gdb/gdb.c:32^M
 (gdb) FAIL: gdb.gdb/selftest.exp: backtrace through signal handler
...
which means that this regexp in proc test_with_self fails:
...
  -re "#0.*(read|poll).*in main \\(.*\\) at .*gdb\\.c.*$gdb_prompt $" {
...

The problem is that gdb_main has been inlined into main, and consequently the
backtrace uses:
...
 #x  <fn> ...
...
instead of
...
 #x  <address> in <fn> ...
...

Fix this by updating the regexp to not require "in" before " main".

Tested on x86_64-linux.
gdb/testsuite/gdb.gdb/selftest.exp