cp:
authornathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 19 Sep 2003 09:28:05 +0000 (09:28 +0000)
committernathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 19 Sep 2003 09:28:05 +0000 (09:28 +0000)
PR c++/12232
* pt.c (instantiate_class_template): Increment
processing_template_decl around the tsubst of a template member
function.
testsuite:
PR c++/12232
* g++.dg/template/memtmpl2.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71563 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/cp/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/template/memtmpl2.C [new file with mode: 0644]

index 6b0fa8a..a94120f 100644 (file)
@@ -1,3 +1,10 @@
+2003-09-19  Nathan Sidwell  <nathan@codesourcery.com>
+
+       PR c++/12232
+       * pt.c (instantiate_class_template): Increment
+       processing_template_decl around the tsubst of a template member
+       function.
+
 2003-09-19  Gabriel Dos Reis  <gdr@integrable-solutions.net>
 
        * decl.c (cxx_scope_descriptor): Fix thinko.
index 878bcda..ce668dd 100644 (file)
@@ -1,3 +1,8 @@
+2003-09-19  Nathan Sidwell  <nathan@codesourcery.com>
+
+       PR c++/12232
+       * g++.dg/template/memtmpl2.C: New test.
+
 2003-09-18  Mark Mitchell  <mark@codesourcery.com>
 
        PR target/11184
diff --git a/gcc/testsuite/g++.dg/template/memtmpl2.C b/gcc/testsuite/g++.dg/template/memtmpl2.C
new file mode 100644 (file)
index 0000000..15ede59
--- /dev/null
@@ -0,0 +1,15 @@
+// { dg-do compile }
+
+// Copyright (C) 2003 Free Software Foundation, Inc.
+// Contributed by Nathan Sidwell 18 Sep 2003 <nathan@codesourcery.com>
+
+// PR c++/12232. ICE
+
+template <unsigned D> class TPL;
+
+template <typename T> struct X {
+  template <template <typename> class V>
+  V<TPL<V<int>::d> > operator () ();
+};
+
+void Foo (X<int> x) {}