aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@gcc.gnu.org>2003-09-20 19:30:51 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2003-09-20 19:30:51 +0000
commitfecafe5e0eb583e0aa7c3b314daa427efd5c57ef (patch)
treedf961d8fb7e401a998ba2568e1689c7ee24991e8 /gcc
parent2c49cd9e103a84f31109f12f4b787d65cbed6c33 (diff)
downloadgcc-fecafe5e0eb583e0aa7c3b314daa427efd5c57ef.zip
gcc-fecafe5e0eb583e0aa7c3b314daa427efd5c57ef.tar.gz
gcc-fecafe5e0eb583e0aa7c3b314daa427efd5c57ef.tar.bz2
apparently managed not to commit the crucial part of c++/12332
From-SVN: r71607
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/pt.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index 5e5af5b..3e1cd0d 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -5280,8 +5280,13 @@ instantiate_class_template (tree type)
|| DECL_FUNCTION_TEMPLATE_P (t))
{
/* Build new TYPE_METHODS. */
-
- tree r = tsubst (t, args, tf_error, NULL_TREE);
+ tree r;
+
+ if (TREE_CODE (t) == TEMPLATE_DECL)
+ processing_template_decl++;
+ r = tsubst (t, args, tf_error, NULL_TREE);
+ if (TREE_CODE (t) == TEMPLATE_DECL)
+ processing_template_decl--;
set_current_access_from_decl (r);
grok_special_member_properties (r);
finish_member_declaration (r);