re PR c++/7586 (Incorrect handling of attributes in template codes)
PR c++/7586 * pt.c (tsubst): Handle typedefs by looking for the specialization. (retrieve_specialization): Only tagged types use DECL_TEMPLATE_INSTANTIATIONS. (instantiate_class_template): Push nested classes too. (tsubst_decl) [TYPE_DECL]: Only check for canonical decl for tagged types. * cp-tree.h (MAYBE_TAGGED_TYPE_P): New macro. * init.c (is_aggr_type): Remove redundant tests. * class.c (push_nested_class): Use CLASS_TYPE_P. From-SVN: r128621
Showing
- gcc/cp/ChangeLog 13 additions, 0 deletionsgcc/cp/ChangeLog
- gcc/cp/class.c 2 additions, 10 deletionsgcc/cp/class.c
- gcc/cp/cp-tree.h 4 additions, 0 deletionsgcc/cp/cp-tree.h
- gcc/cp/init.c 1 addition, 3 deletionsgcc/cp/init.c
- gcc/cp/pt.c 35 additions, 37 deletionsgcc/cp/pt.c
- gcc/testsuite/g++.dg/ext/tmplattr3.C 21 additions, 0 deletionsgcc/testsuite/g++.dg/ext/tmplattr3.C
- gcc/testsuite/g++.dg/ext/tmplattr4.C 19 additions, 0 deletionsgcc/testsuite/g++.dg/ext/tmplattr4.C
Loading
Please register or sign in to comment