[gdb/testsuite] Reduce errors after gdb exit in default_gdb_start
[deliverable/binutils-gdb.git] / gdb / testsuite / gdb.base / gcore-buffer-overflow.exp
index b302a3b675c07c267b4156f46793e155712c3df1..36515ef7a1e2a6ef96ecb4dc8c99b30ae0233a00 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+# Copyright 2007-2020 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 
 # Test GDB's internal buffers safety for the GCORE command.
 
-if $tracelevel then {
-       strace $tracelevel
-}
-
-set prms_id 0
-set bug_id 0
 
-set testfile "gcore-buffer-overflow"
-set srcfile  ${testfile}.c
+standard_testfile .c
 # The ${binfile} basename needs to exceed 80 characters (`sizeof (psargs)')
 # plus some additional data to overwrite the stack frame.
 set pattern  01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
-set binfile  ${objdir}/${subdir}/${testfile}-${pattern}
+append binfile -${pattern}
 
 if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } {
-     untested gcore.exp
+     untested "failed to compile"
      return -1
 }
 
 # Start with a fresh gdb.
 
-gdb_exit
-gdb_start
-gdb_reinitialize_dir $srcdir/$subdir
-gdb_load ${binfile}
-
-# Does this gdb support gcore?
-send_gdb "help gcore\n"
-gdb_expect {
-    -re "Undefined command: .gcore.*$gdb_prompt $" {
-       # gcore command not supported -- nothing to test here.
-       unsupported "gdb does not support gcore on this target"
-       return -1;
-    }
-    -re "Save a core file .*$gdb_prompt $" {
-       pass "help gcore"
-    }
-    -re ".*$gdb_prompt $" {
-       fail "help gcore"
-    }
-    timeout {
-       fail "help gcore (timeout)"
-    }
-}
+clean_restart ${binfile}
 
-gdb_test "set args ${pattern}" \
-         ""                    \
-         "Set buffer exceeding arguments"
+gdb_test_no_output "set args ${pattern}"       \
+    "set buffer exceeding arguments"
 
 if { ! [ runto_main ] } then {
-    untested gcore-buffer-overflow.exp
+    untested "could not run to main"
     return -1
 }
 
-set escapedfilename [string_to_regexp ${objdir}/${subdir}/gcore-buffer-overflow.test]
-
-set test "save a corefile"
-gdb_test_multiple "gcore ${objdir}/${subdir}/gcore-buffer-overflow.test" $test {
-    -re "Saved corefile ${escapedfilename}\[\r\n\]+$gdb_prompt $" {
-       pass $test
-    }
-    -re "Can't create a corefile\[\r\n\]+$gdb_prompt $" {
-       unsupported $test
-    }
-    eof {
-       fail $test
-    }
-}
+gdb_gcore_cmd [standard_output_file gcore-buffer-overflow.test] \
+    "save a corefile"
This page took 0.026705 seconds and 4 git commands to generate.