summaryrefslogtreecommitdiff
path: root/gcc/cp/decl.c
diff options
context:
space:
mode:
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>2004-10-07 17:48:36 +0000
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>2004-10-07 17:48:36 +0000
commit38d89ee90069e78526faf11af9334f0c785bcc2d (patch)
tree8114b15819ae2f47168dcdfac92c99c8df72ce80 /gcc/cp/decl.c
parent5a0660bee7b0f9887b241e2aae070534e7b0db4c (diff)
downloadgcc-38d89ee90069e78526faf11af9334f0c785bcc2d.tar.gz
* cp-tree.h (ICS_USER_FLAG): Remove comment about obsolete flag.
(DECL_MEMBER_TEMPLATE_P): New macro. (is_member_template): Remove. (class_method_index_for_fn): New function. * pt.c (build_over_call): Use DECL_MEMBER_TEMPLATE_P. * class.c (finish_struct_methods): Remove out-of-date comment. * decl.c (copy_fn_p): Use DECL_MBMER_TEMPLATE_P. * decl2.c (check_classfn): Use DECL_MEMBER_TEMPLATE_P and class_method_index_for_fn. * pt.c (is_member_template): Remove. (is_member_template_class): Likewise. (optimize_specialization_lookup_p): New function. (retrieve_specialization): Optimize lookups for members that are not member templates. (register_specialization): Adjust accordingly. (build_template_decl): Add member_template_p parameter. Set DECL_MEMBER_TEMPLATE_P. (process_partial_specialization): Adjust call to retrieve_specialization. (push_template_decl_real): Determine whether the template is a member template. (lookup_template_class): Use retrieve_specialization. (tsubst_decl): Adjust call to retrieve_specialization. (tsubst_exception_specification): New function. (tsubst): Use it. (tsubst_copy): Use DECL_MEMBER_TEMPLATE_P. (instantiate_template): Adjust call to retrieve_specialization. (regenerate_decl_from_template): Do not actually generate a new DECL. (instantiate_decl): Adjust call to retrieve_specialization. (class_method_index_for_fn): New method. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@88697 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/decl.c')
-rw-r--r--gcc/cp/decl.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index 078e2f9326d..919b619cc83 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -8477,7 +8477,8 @@ copy_fn_p (tree d)
gcc_assert (DECL_FUNCTION_MEMBER_P (d));
- if (DECL_TEMPLATE_INFO (d) && is_member_template (DECL_TI_TEMPLATE (d)))
+ if (DECL_TEMPLATE_INFO (d)
+ && DECL_MEMBER_TEMPLATE_P (DECL_TI_TEMPLATE (d)))
/* Instantiations of template member functions are never copy
functions. Note that member functions of templated classes are
represented as template functions internally, and we must