aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite
diff options
context:
space:
mode:
authorJan Kratochvil <jan.kratochvil@redhat.com>2010-07-20 22:06:59 +0000
committerJan Kratochvil <jan.kratochvil@redhat.com>2010-07-20 22:06:59 +0000
commit51d7d80300853eac20339390e1ae05de71e7e1e3 (patch)
treee9e79f30e0c1bb648c5b12d3d21bf0bbfed3406e /gdb/testsuite
parent0af8aa50ec8f74937fc4897b6bd737ca5fc227e2 (diff)
downloadgdb-51d7d80300853eac20339390e1ae05de71e7e1e3.zip
gdb-51d7d80300853eac20339390e1ae05de71e7e1e3.tar.gz
gdb-51d7d80300853eac20339390e1ae05de71e7e1e3.tar.bz2
gdb/testsuite/
* gdb.base/charset-malloc.c: New file. * gdb.base/charset.c (malloc_stub): New prototype. (main): Call it instead of malloc itself. * gdb.base/charset.exp: Use only prepare_for_testing. (binfile): Remove the variable.
Diffstat (limited to 'gdb/testsuite')
-rw-r--r--gdb/testsuite/ChangeLog10
-rw-r--r--gdb/testsuite/gdb.base/charset-malloc.c35
-rw-r--r--gdb/testsuite/gdb.base/charset.c6
-rw-r--r--gdb/testsuite/gdb.base/charset.exp11
4 files changed, 50 insertions, 12 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index e821f0e..5beecdf 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,13 @@
+2010-07-20 Jan Kratochvil <jan.kratochvil@redhat.com>
+ Ulrich Weigand <uweigand@de.ibm.com>
+ Tom Tromey <tromey@redhat.com>
+
+ * gdb.base/charset-malloc.c: New file.
+ * gdb.base/charset.c (malloc_stub): New prototype.
+ (main): Call it instead of malloc itself.
+ * gdb.base/charset.exp: Use only prepare_for_testing.
+ (binfile): Remove the variable.
+
2010-07-19 Jan Kratochvil <jan.kratochvil@redhat.com>
Make core files the process_stratum.
diff --git a/gdb/testsuite/gdb.base/charset-malloc.c b/gdb/testsuite/gdb.base/charset-malloc.c
new file mode 100644
index 0000000..450b7c8
--- /dev/null
+++ b/gdb/testsuite/gdb.base/charset-malloc.c
@@ -0,0 +1,35 @@
+/* This testcase is part of GDB, the GNU debugger.
+
+ Copyright 2010 Free Software Foundation, Inc.
+
+ Contributed by Red Hat, originally written by Jim Blandy.
+
+ 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
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+ Please email any bugs, comments, and/or additions to this file to:
+ bug-gdb@gnu.org */
+
+/* charset.c file cannot use a system include file as it has its own wchar_t
+ definition which would be in a conflict. Use this separate compilation
+ unit. */
+
+#include <stdlib.h>
+
+void
+malloc_stub (void)
+{
+ /* charset.exp wants to allocate memory for constants. So make sure malloc
+ gets linked into the program. */
+ malloc (1);
+}
diff --git a/gdb/testsuite/gdb.base/charset.c b/gdb/testsuite/gdb.base/charset.c
index a7d64f2..5dafc90 100644
--- a/gdb/testsuite/gdb.base/charset.c
+++ b/gdb/testsuite/gdb.base/charset.c
@@ -114,6 +114,8 @@ init_utf32 ()
utf_32_string[i] = iso_8859_1_string[i] & 0xff;
}
+extern void malloc_stub (void);
+
int main ()
{
#ifdef usestubs
@@ -121,9 +123,7 @@ int main ()
breakpoint();
#endif
- /* charset.exp wants to allocate memory for constants. So make sure malloc
- gets linked into the program. */
- malloc (1);
+ malloc_stub ();
/* Initialize ascii_string. */
init_string (ascii_string,
diff --git a/gdb/testsuite/gdb.base/charset.exp b/gdb/testsuite/gdb.base/charset.exp
index 58418be..0639117 100644
--- a/gdb/testsuite/gdb.base/charset.exp
+++ b/gdb/testsuite/gdb.base/charset.exp
@@ -27,18 +27,11 @@ if $tracelevel then {
set testfile "charset"
set srcfile ${testfile}.c
-set binfile ${objdir}/${subdir}/${testfile}
-if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } {
- untested "couldn't compile ${srcdir}/${subdir}/${srcfile}"
+set srcmallocfile ${testfile}-malloc.c
+if { [prepare_for_testing ${testfile}.exp ${testfile} [list $srcfile $srcmallocfile]] } {
return -1
}
-# Start with a fresh gdb.
-gdb_exit
-gdb_start
-gdb_reinitialize_dir $srcdir/$subdir
-gdb_load ${binfile}
-
# Parse the output from a `show charset' command. Return the host
# and target charset as a two-element list.
proc parse_show_charset_output {testname} {