[gdb/testsuite] Fix gdb.base/run-attach-while-running.exp
authorTom de Vries <tdevries@suse.de>
Mon, 7 Jun 2021 13:46:34 +0000 (15:46 +0200)
committerTom de Vries <tdevries@suse.de>
Mon, 7 Jun 2021 13:46:34 +0000 (15:46 +0200)
commitb0e2f96b56b5bbddcd60ca87a0517a460d03dfb4
tree0f2e6df22c3d8980f9030e5360ecdca42def900e
parent409cac34d9328d81ff7d17a51707e7898a7be960
[gdb/testsuite] Fix gdb.base/run-attach-while-running.exp

With a testsuite setup modified to make expect wait a little bit longer for
gdb output (see PR27957), I reliably run into:
...
27        return SYSCALL_CANCEL (nanosleep, requested_time, remaining);^M
(gdb) ^M
Thread 2 "run-attach-whil" stopped.^M
0x00007f13c85a74c0 in __GI___nanosleep () at nanosleep.c:27^M
27        return SYSCALL_CANCEL (nanosleep, requested_time, remaining);^M
FAIL: gdb.base/run-attach-while-running.exp: threaded=1: \
  run-or-attach=attach: non-stop=on: test: attach to process (timeout)
...

The problem is that we're trying to match the gdb_prompt using gdb_test which
uses '$gdb_prompt $'.  The terminating '$' prevents the match.

Fix this by rewriting the gdb_test into a gdb_test_multiple and dropping the
'$'.

Tested on x86_64-linux.

gdb/testsuite/ChangeLog:

2021-06-07  Tom de Vries  <tdevries@suse.de>

PR testsuite/27908
* gdb.base/run-attach-while-running.exp (test): Don't match prompt
after attach using '$gdb_prompt $'.
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.base/run-attach-while-running.exp