aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJason Merrill <jason@gcc.gnu.org>1999-08-06 20:32:24 -0400
committerJason Merrill <jason@gcc.gnu.org>1999-08-06 20:32:24 -0400
commit446588abcb3251b1ef52cdab8f7b761354c1f8d6 (patch)
tree51d05f414fdbfc63fc4456df82de0fe18f49dae2 /gcc
parentcfe2d2e7f54ff9486d0bb944114a84b0af005cb0 (diff)
downloadgcc-446588abcb3251b1ef52cdab8f7b761354c1f8d6.zip
gcc-446588abcb3251b1ef52cdab8f7b761354c1f8d6.tar.gz
gcc-446588abcb3251b1ef52cdab8f7b761354c1f8d6.tar.bz2
new
From-SVN: r28559
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/g++.old-deja/g++.other/ptrmem5.C17
-rw-r--r--gcc/testsuite/g++.old-deja/g++.other/shadow1.C12
-rw-r--r--gcc/testsuite/g++.old-deja/g++.other/virtual6.C14
-rw-r--r--gcc/testsuite/g++.old-deja/g++.pt/ehspec1.C6
4 files changed, 49 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.other/ptrmem5.C b/gcc/testsuite/g++.old-deja/g++.other/ptrmem5.C
new file mode 100644
index 0000000..7c38857
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.other/ptrmem5.C
@@ -0,0 +1,17 @@
+// Bug: g++ doesn't see that A is a vbase of C.
+// Submitted by Jason Merrill <jason@cygnus.com>
+// Build don't link:
+
+struct A {
+ int i;
+ void f ();
+};
+
+struct B: public A { };
+struct C: public virtual B { };
+
+void g ()
+{
+ int C::*p = &A::i; // ERROR - conversion from vbase
+ void (C::*fp)() = &A::f; // ERROR - conversion from vbase
+}
diff --git a/gcc/testsuite/g++.old-deja/g++.other/shadow1.C b/gcc/testsuite/g++.old-deja/g++.other/shadow1.C
new file mode 100644
index 0000000..1691ed4
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.other/shadow1.C
@@ -0,0 +1,12 @@
+// Bug: g++ thinks that the i in g() shadows the parm from f()
+// Contributed by Jason Merrill <jason@cygnus.com>
+// Build don't link:
+
+void f (int i)
+{
+ struct A {
+ void g () {
+ int i;
+ }
+ };
+}
diff --git a/gcc/testsuite/g++.old-deja/g++.other/virtual6.C b/gcc/testsuite/g++.old-deja/g++.other/virtual6.C
new file mode 100644
index 0000000..d0769fc
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.other/virtual6.C
@@ -0,0 +1,14 @@
+// Bug: g++ checks certain non-virtual functions to see if they override
+// virtual functions.
+// Submitted by Jason Merrill <jason@cygnus.com>
+// Special g++ Options: -Woverloaded-virtual
+// Build don't link:
+
+struct A {
+ virtual void f (int);
+};
+
+struct B: public A {
+ static void f ();
+ void f (int);
+};
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/ehspec1.C b/gcc/testsuite/g++.old-deja/g++.pt/ehspec1.C
new file mode 100644
index 0000000..ad1f6c5
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.pt/ehspec1.C
@@ -0,0 +1,6 @@
+// Bug: g++ forgets to instantiate A<int>
+// Contributed by Jason Merrill <jason@cygnus.com>
+// Build don't link:
+
+template <class T> struct A { };
+void f () throw (A<int>);