* cp-tree.h (PROCESSING_REAL_TEMPLATE_DECL_P): Use current_scope.
* g++.dg/template/crash8.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69739
138bc75d-0d04-0410-961f-
82ee72b054a4
+2003-07-24 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+
+ PR c++/11513
+ * cp-tree.h (PROCESSING_REAL_TEMPLATE_DECL_P): Use current_scope.
+
2003-07-23 Mark Mitchell <mark@codesourcery.com>
PR c++/11645
entity with its own template parameter list, and which is not a
full specialization. */
#define PROCESSING_REAL_TEMPLATE_DECL_P() \
- (processing_template_decl > template_class_depth (current_class_type))
+ (processing_template_decl > template_class_depth (current_scope ()))
/* Nonzero if this VAR_DECL or FUNCTION_DECL has already been
instantiated, i.e. its definition has been generated from the
+2003-07-24 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
+
+ PR c++/11513
+ * g++.dg/template/crash8.C: New test.
+
2003-07-23 Steven Bosscher <steven@gcc.gnu.org>
PR c/10602
--- /dev/null
+// { dg-do compile }
+
+// Origin: David Robinson <drtr@dial.pipex.com>
+
+// PR c++/11513: ICE due to incorrect decision whether the tag is template.
+
+template <typename T>
+struct bar
+{
+ struct foo
+ {
+ int a;
+ };
+
+ template <typename U>
+ int wom(U c)
+ {
+ struct foo b;
+ }
+};