re PR c++/5369 (template member friend declaration not honored)
PR c++/5369 * friend.c (is_friend): Handle member function of a class template as template friend. (do_friend): Likewise. * decl2.c (check_classfn): Add template_header_p parameter. * decl.c (start_decl): Adjust check_classfn call. (grokfndecl): Likewise. * pt.c (is_specialization_of_friend): New function. (uses_template_parms_level): Likewise. (push_template_decl_real): Use uses_template_parms_level. (tsubst_friend_function): Adjust check_classfn call. * cp-tree.h (check_classfn): Adjust declaration. (uses_template_parms_level): Add declaration. (is_specialization_of_friend): Likewise. * g++.dg/template/memfriend1.C: New test. * g++.dg/template/memfriend2.C: Likewise. * g++.dg/template/memfriend3.C: Likewise. * g++.dg/template/memfriend4.C: Likewise. * g++.dg/template/memfriend5.C: Likewise. * g++.dg/template/memfriend6.C: Likewise. * g++.dg/template/memfriend7.C: Likewise. * g++.dg/template/memfriend8.C: Likewise. * g++.old-deja/g++.pt/friend44.C: Remove a bogus error. From-SVN: r73833
Showing
gcc/testsuite/g++.dg/template/memfriend1.C
0 → 100644
gcc/testsuite/g++.dg/template/memfriend2.C
0 → 100644
gcc/testsuite/g++.dg/template/memfriend3.C
0 → 100644
gcc/testsuite/g++.dg/template/memfriend4.C
0 → 100644
gcc/testsuite/g++.dg/template/memfriend5.C
0 → 100644
gcc/testsuite/g++.dg/template/memfriend6.C
0 → 100644
gcc/testsuite/g++.dg/template/memfriend7.C
0 → 100644
gcc/testsuite/g++.dg/template/memfriend8.C
0 → 100644
Please
register
or
sign in
to comment