This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[testcase] New eh failure
- To: rth at redhat dot com
- Subject: [testcase] New eh failure
- From: Jakub Jelinek <jakub at redhat dot com>
- Date: Wed, 2 May 2001 13:31:06 +0200
- Cc: gcc-patches at gcc dot gnu dot org
- Reply-To: Jakub Jelinek <jakub at redhat dot com>
Hi!
This testcase fails in the new EH code.
An ERT_FIXUP region is created, but its parent is set to NULL and it fails
later on because of that. I'm not familiar enough with new eh code to fix
this quickly.
Ok to commit?
2001-05-02 Jakub Jelinek <jakub@redhat.com>
* g++.old-deja/g++.eh/catch14.C: New test.
--- gcc/testsuite/g++.old-deja/g++.eh/catch14.C.jj Wed May 2 14:26:42 2001
+++ gcc/testsuite/g++.old-deja/g++.eh/catch14.C Wed May 2 14:27:13 2001
@@ -0,0 +1,33 @@
+// Copyright (C) 2001 Free Software Foundation, Inc.
+// Contributed by Jakub Jelinek 2 May 2001 <jakub@redhat.com>
+
+// Build don't link:
+// Special g++ Options: -O1
+
+void foo();
+
+struct A {
+ A (int x) { };
+ ~A() {
+ try {
+ foo ();
+ } catch (...) { }
+ };
+};
+
+struct B;
+
+B *x;
+
+struct B {
+ void a();
+ void b();
+ static B* c() {
+ A y = 0;
+ return x;
+ };
+};
+
+void B::a() {
+ c()->b();
+}
Jakub