]> gcc.gnu.org Git - gcc.git/commit
class.c (delete_duplicate_fields_1): Use DECL_DECLARES_TYPE_P to look for type declar...
authorMark Mitchell <mmitchell@usa.net>
Wed, 20 May 1998 23:28:21 +0000 (23:28 +0000)
committerMark Mitchell <mmitchel@gcc.gnu.org>
Wed, 20 May 1998 23:28:21 +0000 (23:28 +0000)
commit35acd3f28278072c4753f582ecdc1d49935b1d25
treee68e5971c36459908cfeda440454fbae4b33f8b1
parent2a3edac9ad6f035784b1eeccfa6fc7d82248077f
class.c (delete_duplicate_fields_1): Use DECL_DECLARES_TYPE_P to look for type declarations.

* class.c (delete_duplicate_fields_1): Use DECL_DECLARES_TYPE_P
to look for type declarations.
(finish_struct): Deal with templates on the CLASSTYPE_TAGS list.
* cp-tree.h (DECL_DECLARES_TYPE_P): New macro.
(finish_member_class_template): Declare.
* decl.c (pushtag): Put member class templates on the
CLASSTYPE_TAGS list, just as for ordinary member classes.
(pushdecl_class_level): Use DECL_DECLARES_TYPE_P.
(lookup_tag): Look for IDENTIFIER_CLASS_VALUEs, just as with
IDENTIFIER_NAMESPACE_VALUEs.
* parse.y (component_decl): Move code to ...
* semantics.c (finish_member_class_template): New function.
Don't put member class templates on the list of components for a
class.
* pt.c (classtype_mangled_name): Don't try DECL_CONTEXT on types.
In fact, don't use DECL_CONTEXT at all here.

From-SVN: r19918
gcc/cp/ChangeLog
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/cp/decl.c
gcc/cp/parse.c
gcc/cp/parse.y
gcc/cp/pt.c
gcc/cp/semantics.c
gcc/testsuite/g++.old-deja/g++.pt/memclass10.C [new file with mode: 0644]
gcc/testsuite/g++.old-deja/g++.pt/memclass11.C [new file with mode: 0644]
This page took 0.056499 seconds and 5 git commands to generate.