gcc/boehm-gc/testsuite/boehm-gc.c/trace_test.c
Rainer Orth 94ea609ab3 re PR boehm-gc/11412 (boehm-gc testing problems)
PR boehm-gc/11412
	* configure.ac (THREADCFLAGS): New variable.
	Use it instead of INCLUDES, AM_CPPFLAGS.
	<*-*-kfreebsd*-gnu> (THREADDLLIBS): Rename to THREADLIBS.
	Remove DG/UX support.
	(AC_CONFIG_FILES): Add testsuite/Makefile.
	* Makefile.am (AUTOMAKE_OPTIONS): Use foreign instead of cygnus.
	(SUBDIRS): Add testsuite.
	(libgcjgc_la_LIBADD): Remove $(UNWINDLIBS).
	(AM_CXXFLAGS): Add $(THREADCFLAGS).
	(AM_CFLAGS): Likewise.
	Remove TESTS related variables.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* testsuite/Makefile.am: New file.
	* testsuite/Makefile.in: New file.
	* testsuite/lib/boehm-gc.exp: New file.
	* testsuite/config/default.exp: New file.
	* testsuite/boehm-gc.c/c.exp: New file.
	* testsuite/boehm-gc.lib/lib.exp: New file.
	* tests/test.c: Move ...
	* testsuite/boehm-gc.c/gctest.c: ... here.
	* tests/leak_test.c, tests/middle.c, tests/thread_leak_test.c,
	tests/trace_test.c: Move ...
	* testsuite/boehm-gc.c: ... here.
	* testsuite/boehm-gc.c/trace_test.c: Skip everywhere.
	* tests/staticrootslib.c, tests/staticrootstest.c: Move ...
	* testsuite/boehm-gc.lib: ... here.
	* testsuite/boehm-gc.lib/staticrootstest.c: Use dg-add-shlib
	staticrootslib.c.
	* tests/test_cpp.cc: Move ...
	* testsuite/boehm-gc.c++: ... here.

From-SVN: r171514
2011-03-25 17:04:16 +00:00

33 lines
664 B
C

/* { dg-skip-if "requires --enable-gc-debug" *-*-* } */
#include <stdio.h>
#define GC_DEBUG
#include "gc.h"
struct treenode {
struct treenode *x;
struct treenode *y;
} * root[10];
struct treenode * mktree(int i) {
struct treenode * r = GC_MALLOC(sizeof(struct treenode));
if (0 == i) return 0;
if (1 == i) r = GC_MALLOC_ATOMIC(sizeof(struct treenode));
r -> x = mktree(i-1);
r -> y = mktree(i-1);
return r;
}
int main()
{
int i;
for (i = 0; i < 10; ++i) {
root[i] = mktree(12);
}
GC_generate_random_backtrace();
GC_generate_random_backtrace();
GC_generate_random_backtrace();
GC_generate_random_backtrace();
return 0;
}