summaryrefslogtreecommitdiff
path: root/gcc/cp/semantics.c
diff options
context:
space:
mode:
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>1998-09-05 20:14:21 +0000
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>1998-09-05 20:14:21 +0000
commit1d42585d19883e3c1a597b98615257c9f3b6a066 (patch)
treed1d0fafc75e4f76e3e8d41616158cdd0406ba16f /gcc/cp/semantics.c
parent2149299a02cb354ad8560e67ca90e9ed8f04b7b6 (diff)
downloadgcc-1d42585d19883e3c1a597b98615257c9f3b6a066.tar.gz
* cp-tree.h (TI_PENDING_SPECIALIZATION_FLAG): Remove.
* class.c (finish_struct): Remove hackery to deal with explicit specializations in class scope. * decl.c (grokfndecl): Improve error-recovery. * decl2.c (grokfield): Likewise. * pt.c (check_specialization_scope): New function. (begin_specialization): Call it. (process_partial_specialization): New function, split out from push_template_decl. Check partial specializations more stringently. (push_template_decl): Call it. (check_explicit_specialization): Don't attempt to handle explicit specializations in class scope. (template_parm_data): Document. Add current_arg and arg_uses_template_parms. (mark_template_parm): Set it. (tsubst_arg_types): Remove unused variable. * semantics.c (begin_class_definition): Tweak. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@22271 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/semantics.c')
-rw-r--r--gcc/cp/semantics.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c
index 89aca96b8d9..eee6616698e 100644
--- a/gcc/cp/semantics.c
+++ b/gcc/cp/semantics.c
@@ -1234,9 +1234,9 @@ begin_class_definition (t)
&& TREE_CODE (TYPE_CONTEXT (t)) != NAMESPACE_DECL
&& ! current_class_type)
push_template_decl (TYPE_STUB_DECL (t));
+ maybe_process_partial_specialization (t);
pushclass (t, 0);
TYPE_BEING_DEFINED (t) = 1;
- maybe_process_partial_specialization (t);
/* Reset the interface data, at the earliest possible
moment, as it might have been set via a class foo;
before. */