From Alexandre Oliva
authorAlexandre Oliva <oliva@dcc.unicamp.br>
Thu, 9 Jul 1998 20:56:44 +0000 (20:56 +0000)
committerRobert Lipe <robertl@gcc.gnu.org>
Thu, 9 Jul 1998 20:56:44 +0000 (20:56 +0000)
        * g++.old-deja/g++.other/partspec1.C: test matching of partial
        specialization with typedef'ed names used as array indexes.

From-SVN: r21040

gcc/testsuite/ChangeLog
gcc/testsuite/g++.old-deja/g++.other/partspec1.C [new file with mode: 0644]

index 4a0a68495180275b2fd8ab975c44d03b27d7b90e..55b720f36d0b6968b71db4dbaa97e74fd627c1d6 100644 (file)
@@ -1,3 +1,8 @@
+Thu Jul  9 22:44:49 1998  Alexandre Oliva   <oliva@dcc.unicamp.br>
+
+        * g++.old-deja/g++.other/partspec1.C: test matching of partial
+        specialization with typedef'ed names used as array indexes.
+
 Thu Jul  9 00:38:51 1998  Jeffrey A Law  (law@cygnus.com)
 
        * gcc.dg/980709-1.c: New test.
diff --git a/gcc/testsuite/g++.old-deja/g++.other/partspec1.C b/gcc/testsuite/g++.old-deja/g++.other/partspec1.C
new file mode 100644 (file)
index 0000000..9948534
--- /dev/null
@@ -0,0 +1,23 @@
+// Build don't link:
+// Tests partial specialization
+template<class T> struct foo1 {};
+template<class T, int n> struct foo1<T[n]>;
+foo1<char> bar1;
+foo1<char[10]> baz1; // ERROR - incomplete type
+
+template<class T> struct foo2 {};
+template<class T, unsigned n> struct foo2<T[n]>;
+foo2<char> bar2;
+foo2<char[10]> baz2; // ERROR - incomplete type
+
+typedef unsigned int other1_t;
+template<class T> struct foo3 {};
+template<class T, other1_t n> struct foo3<T[n]>;
+foo3<char> bar3;
+foo3<char[10]> baz3; // ERROR - incomplete type - XFAIL *-*-*
+
+typedef int other2_t;
+template<class T> struct foo4 {};
+template<class T, other1_t n> struct foo4<T[n]>;
+foo4<char> bar4;
+foo4<char[10]> baz4; // ERROR - incomplete type - XFAIL *-*-*