[gdb/testsuite] Fix gdb.server/non-existing-program.exp with remote-gdbserver-on...
authorTom de Vries <tdevries@suse.de>
Tue, 28 Mar 2023 12:18:44 +0000 (14:18 +0200)
committerTom de Vries <tdevries@suse.de>
Tue, 28 Mar 2023 12:18:44 +0000 (14:18 +0200)
With test-case gdb.server/non-existing-program.exp and native, I have reliably:
...
(gdb) builtin_spawn gdbserver stdio non-existing-program^M
stdin/stdout redirected^M
/bin/bash: line 0: exec: non-existing-program: not found^M
During startup program exited with code 127.^M
Exiting^M
PASS: gdb.server/non-existing-program.exp: gdbserver exits cleanly
...

But with target board remote-gdbserver-on-localhost I sometimes have:
...
(gdb) builtin_spawn /usr/bin/ssh -t -l remote-target localhost gdbserver \
  stdio non-existing-program^M
stdin/stdout redirected^M
/bin/bash: line 0: exec: non-existing-program: not found^M
During startup program exited with code 127.^M
Exiting^M
Connection to localhost closed.^M^M
PASS: gdb.server/non-existing-program.exp: gdbserver exits cleanly
...
and sometimes the exact same output, but a FAIL instead.

Fix this by replacing "Exiting\r\n$" with "Exiting\r\n" in the regexps.

Tested on x86_64-linux.

gdb/testsuite/gdb.server/non-existing-program.exp

index 32f27fa2b1cf723355f13adf2af417e3d4fe86ff..eea1eb1d911010f4eb1b2386421dd1c7e3490974 100644 (file)
@@ -40,18 +40,18 @@ expect {
     # This is what we get on ptrace-based targets with
     # startup-with-shell disabled (e.g., when the SHELL variable is
     # unset).
-    -re "stdin/stdout redirected.*gdbserver: Cannot exec non-existing-program\r\ngdbserver: Error: No such file or directory\r\n\r\nDuring startup program exited with code 127\.\r\nExiting\r\n$" {
+    -re "stdin/stdout redirected.*gdbserver: Cannot exec non-existing-program\r\ngdbserver: Error: No such file or directory\r\n\r\nDuring startup program exited with code 127\.\r\nExiting\r\n" {
        set saw_exiting 1
        exp_continue
     }
     # Likewise, but with startup-with-shell enabled, which is the
     # default behaviour.
-    -re "stdin/stdout redirected.*exec: non-existing-program: not found\r\nDuring startup program exited with code 127\.\r\nExiting\r\n$" {
+    -re "stdin/stdout redirected.*exec: non-existing-program: not found\r\nDuring startup program exited with code 127\.\r\nExiting\r\n" {
        set saw_exiting 1
        exp_continue
     }
     # This is what we get on Windows.
-    -re "Error creating process\r\n\r\nExiting\r\n$" {
+    -re "Error creating process\r\n\r\nExiting\r\n" {
        set saw_exiting 1
        exp_continue
     }