OSDN Git Service

* cp-tree.h (TI_PENDING_SPECIALIZATION_FLAG): Remove.
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 5 Sep 1998 20:14:21 +0000 (20:14 +0000)
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 5 Sep 1998 20:14:21 +0000 (20:14 +0000)
commit1d42585d19883e3c1a597b98615257c9f3b6a066
treed1d0fafc75e4f76e3e8d41616158cdd0406ba16f
parent2149299a02cb354ad8560e67ca90e9ed8f04b7b6
* 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
23 files changed:
gcc/cp/ChangeLog
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/cp/decl.c
gcc/cp/decl2.c
gcc/cp/pt.c
gcc/cp/semantics.c
gcc/testsuite/g++.old-deja/g++.pt/explicit12.C
gcc/testsuite/g++.old-deja/g++.pt/explicit13.C
gcc/testsuite/g++.old-deja/g++.pt/explicit35.C
gcc/testsuite/g++.old-deja/g++.pt/memclass7.C
gcc/testsuite/g++.old-deja/g++.pt/memtemp61.C
gcc/testsuite/g++.old-deja/g++.pt/memtemp62.C
gcc/testsuite/g++.old-deja/g++.pt/memtemp77.C
gcc/testsuite/g++.old-deja/g++.pt/spec10.C
gcc/testsuite/g++.old-deja/g++.pt/spec11.C
gcc/testsuite/g++.old-deja/g++.pt/spec12.C
gcc/testsuite/g++.old-deja/g++.pt/spec13.C
gcc/testsuite/g++.old-deja/g++.pt/spec15.C
gcc/testsuite/g++.old-deja/g++.pt/spec20.C [new file with mode: 0644]
gcc/testsuite/g++.old-deja/g++.pt/spec21.C [new file with mode: 0644]
gcc/testsuite/g++.old-deja/g++.pt/spec22.C [new file with mode: 0644]
gcc/testsuite/g++.old-deja/g++.pt/spec6.C