gdb/testsuite: Fix rtld-step-nodebugsym.exp
authorLancelot SIX <lancelot.six@amd.com>
Wed, 9 Nov 2022 23:02:44 +0000 (23:02 +0000)
committerLancelot SIX <lancelot.six@amd.com>
Thu, 10 Nov 2022 09:26:34 +0000 (09:26 +0000)
commitf735116b3fb6dc30912e969d6e8c1b15bbaef510
treed122a4012bfafecd82ff244f438aad899a597b3b
parent64713044a4fa24a8694d7bfc9649f5d69b7e2ac1
gdb/testsuite: Fix rtld-step-nodebugsym.exp

The test case introduced in bafcc335266 (Fix stepping in rtld without
debug symbol) fails on some systems as reported by PR/29768.  This can
be seen if the system does not have debug info for the libc:

  (gdb) step^M
  Single stepping until exit from function main,^M
  which has no line number information.^M
  hello world[Inferior 1 (process 48203) exited normally]^M
  (gdb) PASS: gdb.base/rtld-step-nodebugsym.exp: step
  continue^M
  The program is not being run.^M
  (gdb) FAIL: gdb.base/rtld-step-nodebugsym.exp: continue until exit (the program is no longer running)

Without glibc debug info, GDB steps until the program finishes, and
then "gdb_continue_to_end" fails.

As this test was designed to check that GDB does not crash in the "step"
command, the continue does not carry real meaning to the test.

Replace it by "print 0" so we still check that after the step command
GDB is still alive, which is what we care about.

Tested on Ubuntu-22.04 x86_64, with and without libc6-dbg.

Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29768
Approved-By: Simon Marchi <simon.marchi@efficios.com>
gdb/testsuite/gdb.base/rtld-step-nodebugsym.exp