New test case.
authorMartin v. Löwis <loewis@gcc.gnu.org>
Mon, 3 May 1999 12:21:16 +0000 (12:21 +0000)
committerMartin v. Löwis <loewis@gcc.gnu.org>
Mon, 3 May 1999 12:21:16 +0000 (12:21 +0000)
From-SVN: r26746

gcc/testsuite/g++.old-deja/g++.ns/template9.C [new file with mode: 0644]

diff --git a/gcc/testsuite/g++.old-deja/g++.ns/template9.C b/gcc/testsuite/g++.old-deja/g++.ns/template9.C
new file mode 100644 (file)
index 0000000..836c022
--- /dev/null
@@ -0,0 +1,40 @@
+// Produces ICE 980519.
+// Test case from Dirk Engelmann <Dirk.Engelmann@IWR.Uni-Heidelberg.De>
+
+namespace vector {
+
+  // allocate memory for vector
+        
+        template <class T>
+        inline T* alloc(const int aWidth)
+        {
+                // allocate memory
+                return new T[aWidth];
+        }
+
+}
+
+namespace matrix {
+
+  // allocate memory for matrix
+        template <class T>
+        T** alloc(const int aWidth,const int aHeight)
+        {
+                // allocate memory
+                T **mat = vector::alloc<T*>(aHeight);
+                T *data = vector::alloc<T> (aWidth*aHeight);
+                // set pointer
+                for (int i=0; i<aHeight; i++)
+                        mat[i] = &data[aWidth*i];
+                // ok
+                return mat;
+        }
+
+}
+
+main(void)
+{
+  // sample
+  double **m=matrix::alloc<double>(10,20);
+
+}