Patchwork [pushed] Enable gdb.base/inferior-died.exp on is_remote target boards

login
register
mail settings
Submitter Pedro Alves
Date Oct. 12, 2017, 5:47 p.m.
Message ID <1507830432-8003-1-git-send-email-palves@redhat.com>
Download mbox | patch
Permalink /patch/23503/
State New
Headers show

Comments

Pedro Alves - Oct. 12, 2017, 5:47 p.m.
We support follow-fork in the remote protocol nowadays.

Also, the right way to enable non-stop mode is to do it before
connecting, and for use_gdb_stub boards, that means we have to do it
at gdb_load time.  The "modern" pattern for that is to pass non-stop
in GDBFLAGS.

This makes the test pass with --target_board=native-gdbserver.

gdb/testsuite/ChangeLog:
2017-10-12  Pedro Alves  <palves@redhat.com>
	    Simon Marchi <simon.marchi@polymtl.ca>

	* gdb.base/inferior-died.exp: Remove is_remote and isnative
	checks.  Use build_executable + clean_restart instead of
	prepare_for_testing.  Pass "set non-stop on" via GDBFLAGS instead
	of enabling non-stop after starting gdb.
---
 gdb/testsuite/ChangeLog                  |  8 ++++++++
 gdb/testsuite/gdb.base/inferior-died.exp | 13 ++++++-------
 2 files changed, 14 insertions(+), 7 deletions(-)

Patch

diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index b6cd6ee..0fa3afb 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,4 +1,12 @@ 
 2017-10-12  Pedro Alves  <palves@redhat.com>
+	    Simon Marchi <simon.marchi@polymtl.ca>
+
+	* gdb.base/inferior-died.exp: Remove is_remote and isnative
+	checks.  Use build_executable + clean_restart instead of
+	prepare_for_testing.  Pass "set non-stop on" via GDBFLAGS instead
+	of enabling non-stop after starting gdb.
+
+2017-10-12  Pedro Alves  <palves@redhat.com>
 
 	* gdb.threads/non-ldr-exc-1.exp: No longer skip if is_remote target.
 	* gdb.threads/non-ldr-exc-2.exp: Ditto.
diff --git a/gdb/testsuite/gdb.base/inferior-died.exp b/gdb/testsuite/gdb.base/inferior-died.exp
index f2005fa..ecf80d4 100644
--- a/gdb/testsuite/gdb.base/inferior-died.exp
+++ b/gdb/testsuite/gdb.base/inferior-died.exp
@@ -13,11 +13,6 @@ 
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-if { [is_remote target] || ![isnative] } then {
-    unsupported "inferior-died.exp"
-    continue
-}
-
 # Until "set follow-fork-mode" and "catch fork" are implemented on
 # other targets...
 #
@@ -33,12 +28,16 @@  if { ![support_displaced_stepping] } {
 
 standard_testfile .c
 
-if { [prepare_for_testing "failed to prepare" ${testfile} ${testfile}.c] } {
+if { [build_executable "failed to build" ${testfile} ${testfile}.c] } {
     return -1
 }
 
+save_vars { GDBFLAGS } {
+    append GDBFLAGS " -ex \"set non-stop on\""
+    clean_restart ${binfile}
+}
+
 gdb_test_no_output "set detach-on-fork off"
-gdb_test_no_output "set non-stop on"
 
 if ![runto_main] {
     return