aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorVolker Reichelt <reichelt@gcc.gnu.org>2003-09-18 12:12:13 +0000
committerVolker Reichelt <reichelt@gcc.gnu.org>2003-09-18 12:12:13 +0000
commitef08de8057b34a1bae06c41ce1843f8c615170a1 (patch)
treec4f9bcca43f4aa0be087466bc1b4c331cbf04a7c /gcc
parent9fd6479043b30a8abb901d481d0f6422f0af4fda (diff)
downloadgcc-ef08de8057b34a1bae06c41ce1843f8c615170a1.zip
gcc-ef08de8057b34a1bae06c41ce1843f8c615170a1.tar.gz
gcc-ef08de8057b34a1bae06c41ce1843f8c615170a1.tar.bz2
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
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/g++.dg/other/gc2.C38
3 files changed, 48 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 8db2dc9..33da22d 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -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>
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 7bd6e69..dcef4f4 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -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
diff --git a/gcc/testsuite/g++.dg/other/gc2.C b/gcc/testsuite/g++.dg/other/gc2.C
new file mode 100644
index 0000000..1422294
--- /dev/null
+++ b/gcc/testsuite/g++.dg/other/gc2.C
@@ -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>());
+}