+1998-07-28 Mark Mitchell <mark@markmitchell.com>
+
+ * friend.c (is_friend): Be lenient with member functions to deal
+ with nested friends.
+
1998-07-28 Jason Merrill <jason@yorick.cygnus.com>
* class.c (finish_struct_1): Convert integer_zero_node to
friendship. This is bogus in general since two
specializations of a template with non-type
template parameters may have the same type, but
- be different. */
- if (flag_guiding_decls
+ be different.
+
+ Temporarily, we are also more lenient to deal
+ with nested friend functions, for which there can
+ be more than one FUNCTION_DECL, despite being the
+ same function. When that's fixed, the
+ FUNCTION_MEMBER_P bit can go. */
+ if ((flag_guiding_decls
+ || DECL_FUNCTION_MEMBER_P (supplicant))
&& comptypes (TREE_TYPE (supplicant),
TREE_TYPE (TREE_VALUE (friends)), 1))
return 1;