re PR c++/12316 (trouble with garbage collection)

PR c++/12316
	* testsuite/g++.dg/other/gc2.C: New test.

	* cp/ChangeLog: Add PR number to patch for PR c++/12316.

From-SVN: r71517
This commit is contained in:
Volker Reichelt 2003-09-18 12:12:13 +00:00
parent 9fd6479043
commit ef08de8057
3 changed files with 48 additions and 0 deletions

View File

@ -1,3 +1,7 @@
2003-09-18 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
* ChangeLog: Add PR number to patch for PR c++/12316.
2003-09-18 Gabriel Dos Reis <gdr@integrable-solutions.net>
* error.c (dump_type): Simplify. Use pp_type_specifier_seq for
@ -6,6 +10,7 @@
2003-09-17 Richard Henderson <rth@redhat.com>
PR c++/12316
* semantics.c (expand_body): Don't save/restore input_location.
2003-09-17 Mark Mitchell <mark@codesourcery.com>

View File

@ -1,3 +1,8 @@
2003-09-18 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
PR c++/12316
* g++.dg/other/gc2.C: New test.
2003-09-17 Mark Mitchell <mark@codesourcery.com>
PR c++/11991

View File

@ -0,0 +1,38 @@
// PR c++/12316
// Origin: Volker Reichelt <reichelt@igpm.rwth-aachen.de>
// { dg-do compile }
// { dg-options "--param ggc-min-expand=0 --param ggc-min-heapsize=0" }
inline void FOO() {}
template<typename> struct A
{
A() {}
~A() throw() {}
};
template<typename> struct B
{
static void foo();
static void bar() { foo(); }
};
struct C {};
template<typename> struct D : C
{
D() {}
~D() { B<void>::bar(); }
};
template<typename> struct E : D<void>
{
static void baz() {}
E(A<void>) { baz(); }
};
void BAR()
{
new E<void>(A<void>());
}