aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2000-07-03 08:14:03 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2000-07-03 08:14:03 +0000
commitd9b531423e1dda0ae17f0b7dfc81dedd17afacac (patch)
tree0e7b084447595c999442145c62d82ef95409c497 /gcc
parent1ddd4323a4ef593ac653e8241cbc5fca0efc7f5e (diff)
downloadgcc-d9b531423e1dda0ae17f0b7dfc81dedd17afacac.zip
gcc-d9b531423e1dda0ae17f0b7dfc81dedd17afacac.tar.gz
gcc-d9b531423e1dda0ae17f0b7dfc81dedd17afacac.tar.bz2
* g++.old-deja/g++.pt (typename25.C): New test.
From-SVN: r34843
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/g++.old-deja/g++.pt/typename25.C32
2 files changed, 36 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 78e9f73..3f8342c 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2000-07-03 Nathan Sidwell <nathan@codesourcery.com>
+
+ * g++.old-deja/g++.pt (typename25.C): New test.
+
2000-07-02 Zack Weinberg <zack@wolery.cumb.org
* gcc.c-torture/compile/20000701-1.c: New test.
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/typename25.C b/gcc/testsuite/g++.old-deja/g++.pt/typename25.C
new file mode 100644
index 0000000..eb3b4ee
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.pt/typename25.C
@@ -0,0 +1,32 @@
+// Build don't link:
+// Special g++ Options:
+// Copyright (C) 2000 Free Software Foundation
+// Adapted by Nathan Sidwell 1 July 2000 <nathan@codesourcery.com>
+// Derived from a bug report by scott snyder <snyder@fnal.gov>
+// Our implicit typename extension was causing this pedantically
+// correct program to fail
+
+struct list
+{
+ typedef int reference;
+};
+
+class d0_Collection_Base {};
+
+
+template <class T>
+class d0_List_1
+ : virtual public d0_Collection_Base,
+ public list
+{
+public:
+ typedef int reference;
+};
+
+template <class T>
+class d0_List
+{
+public:
+ typedef d0_List_1<T> Base;
+ typedef typename Base::reference reference;
+};